1.一种用户等级自动划分方法,其特征在于,该方法包括以下步骤:步骤S1、选择样本数据:选取指定时间段内的用户行为数据作为原始样本数据,转入步骤S2;
步骤S2、选择用户特征:在用户行为数据中选取至少一种用户特征作为计算距离的维度,转入步骤S3;
步骤S3、确定分类的个数K值:根据用户被分成几个类别等级,确定分类的个数K,K为正整数,转入步骤S4;
步骤S4、确定初始类心:随机在原始样本数据中挑选K个用户作为初始类心,转入步骤S5;
步骤S5、归类划分:根据步骤S2中选取的维度,测量原始样本数据中剩余的每个用户到当前各个类心的距离D,距离D的计算公式为:2
D=(xj-μi)
其中,xj为第j个用户特征,j为正整数,μi为第i个类的类心,i为1~K的正整数;将所述剩余的每个用户归类到距离最近的一个类中,完成K个类的划分,转入步骤S6;
步骤S6、计算新的类心:在当前已经划分好的K个类中,重新计算各个类的类心,转入步骤S7;
步骤S7、重复迭代步骤S5、S6,直至新的类心与重新计算前的类心相等或者变化量小于指定阈值时,停止迭代运算,则当前所划分的K个分类即为所需划分的用户等级分类;
其中,步骤S6具体包括以下操作:
步骤S601:针对当前K类中每一类下属的每一个用户,分别计算该用户到本类其他用户的距离和V,距离和计算公式为:其中,xj为第j个用户特征,j为正整数,μi为第i个类的类心,i为1~K的正整数,Si表示用户特征的集合,转入步骤S602;
步骤S602:为K类中的每一类选取距离和最小的用户作为该类的新的类心。
2.如权利要求1所述的用户等级自动划分方法,其特征在于:步骤S2中所述用户特征包括用户观看时长、用户观看次数、用户发送弹幕数、用户发送免费道具数、用户在线领取免费道具数、用户发送付费道具数、用户关注房间数、用户关注分区数。
3.如权利要求1所述的用户等级自动划分方法,其特征在于,在步骤S2之后还包括归一化特征值的操作:对每个选取的用户特征进行特征值的归一化计算,计算公式为:Y=(X-MinValue(X))/(MaxValue(X)-MinValue(X)),其中,Y为归一化后的特征值,X为某个用户特征对应的一个用户特征值,MinValue(X)为该用户特征中最小的用户特征值,MaxValue(X)为该用户特征中最大的用户特征值,归一化之后的用户特征值都集中在(0,1]之间。
4.一种用户等级自动划分系统,其特征在于:该系统包括样本数据选择模块、用户特征选择模块、初始类心确定模块、归类划分模块、新类心计算模块和迭代运算模块;
所述样本数据选择模块用于:选取指定时间段内的用户行为数据作为原始样本数据;
所述用户特征选择模块用于:在用户行为数据中选取至少一种用户特征作为计算距离的维度;
所述初始类心确定模块用于:根据用户被分成几个类别等级,确定分类的个数K,K为正整数;随机在原始样本数据中挑选K个用户作为初始类心;
所述归类划分模块用于:根据用户特征选择模块选取的维度,测量原始样本数据中剩余的每个用户到当前各个类心的距离D,距离D的计算公式为:2
D=(xj-μi)
其中,xj为第j个用户特征,j为正整数,μi为第i个类的类心,i为1~K的正整数;将所述剩余的每个用户归类到距离最近的一个类中,完成K个类的划分;
所述新类心计算模块用于:在当前已经划分好的K个类中,重新计算各个类的类心;
所述迭代运算模块用于:重复迭代调用归类划分模块和新类心计算模块进行归类划分操作及新类心计算操作,直至新的类心与重新计算前的类心相等或者变化量小于指定阈值时,停止迭代运算,则当前所划分的K个分类即为所需划分的用户等级分类;
其中,所述新类心计算模块重新计算各个类的类心的具体过程为:针对当前K类中每一类下属的每一个用户,分别计算该用户到本类其他用户的距离和V,距离和计算公式为:其中,xj为第j个用户特征,j为正整数,μi为第i个类的类心,i为1~K的正整数,Si表示用户特征的集合;为K类中的每一类选取距离和最小的用户作为该类的新的类心。
5.如权利要求4所述的用户等级自动划分系统,其特征在于:所述用户特征包括用户观看时长、用户观看次数、用户发送弹幕数、用户发送免费道具数、用户在线领取免费道具数、用户发送付费道具数、用户关注房间数、用户关注分区数。
6.如权利要求4所述的用户等级自动划分系统,其特征在于:该系统还包括特征值归一化模块,所述特征值归一化模块用于对每个选取的用户特征进行特征值的归一化计算,计算公式为:Y=(X-MinValue(X))/(MaxValue(X)-MinValue(X)),其中,Y为归一化后的特征值,X为某个用户特征对应的一个用户特征值,MinValue(X)为该用户特征中最小的用户特征值,MaxValue(X)为该用户特征中最大的用户特征值,归一化之后的用户特征值都集中在(0,1]之间。