具体实施方式
为更进一步阐述本发明所采取的技术手段及取得的效果,下面结合附图及较佳实施例,对本发明的技术方案,进行清楚和完整的描述。
如图1所示,一种用户价值评分方法,包括步骤:
S110、获取正样本和负样本,其中,所述正样本为产生实际价值的用户的若干个属性,所述负样本为未产生实际价值的用户的若干个属性,用户的属性包括数值型的属性和分类型的属性;
S120、根据所述正样本和所述负样本计算每个属性的信息值,其中所述信息值用于评估一个属性对所述正样本的影响程度;
S130、根据每个属性的信息值与所有属性的信息值的和的比值,获得每个属性的权重;
S140、根据用户的若干个属性的属性值和对应的权重获得用户的用户价值评分。
上述用户价值评分方法可以通过相应的程序实现,程序运行在终端中,例如电脑或者手机中。该方法根据属性的属性值和属性的权重对用户价值进行评分,由于用户价值的判断基于客观数据,因此能够客观判断用户价值,提高了用户价值判断的准确性。为了更好地理解该方法,下面对各个步骤进行详细介绍。
在步骤S110中,用户并不限制于是一个企业相关的用户,还可以是个人创办的网站中所访问的用户等,本发明并不对此做出限定。用户的属性包括用户行为和用户基本信息,用户行为指的是用户通过中间资源购买、使用和评价某种产品的记录,同时辅以用户资源产品自身及环境的信息,用户基本信息也可以称之为用户基本属性,一般包括用户的姓名、年龄和性别等等。用户的价值由用户行为和用户基本属性综合得到,而不同的属性有不同的价值,因此准确判断用户价值的关键点在于准确确定每个属性的权重,下面将对如何确定各个属性的权重进行介绍。
用户价值可以为用户带来的流水、用户通过产品进行有效数据交换的数量和质量、用户帮助推广产品的力度、用户对产品反馈意见等等。正样本为产生实际价值的用户的属性,负样本为未产生实际价值的用户的属性,是否产生实际价值可以根据实际场景进行确定。例如,在某购物网站中,如果用户在该购物网站购买了产品,则认定为该用户产生了实际价值,如果用户只是浏览了该购物网站,并没有购买任何产品,则认定为该用户未产生实际价值。
获取正负样本的方式有很多种,例如,在一个实施例中,获取正样本和负样本的步骤可以包括:获取所有用户的属性,对每个属性进行清洗,获得属性的全量样本;按照预设的正样本和负样本的比例,从所述全量样本中选取正样本和负样本。正样本和负样本的比例可以根据实际需要进行设定,考虑到未产生实际价值的用户一般多于产生实际价值的用户,可选的,选取的负样本的数量一般多于正样本的数量,例如,正样本和负样本的比例为1:9。
对数据进行清洗的方法有很多种,例如,在一个实施例中,对每个属性进行清洗的步骤可以包括:
S1、若获取的某条记录中属性的属性值不在设定范围内,将该条记录删除或者将该属性值替换为空值;
事先设定每个属性取值的范围,如果获取的某条记录中属性的属性值不在设定的范围内,则确定该属性值为异常值,将该条记录删除或者将该属性值替换为空值。以性别为例,设定性别的属性值的范围为女性、男性和中性,如果获取的一条记录中性别的属性值为13,则可以确定该属性值为记录错误的数据,即异常值,将该条记录删除或者将13替换为空值。如果某一个属性下所有的属性值都不在设定的范围内,将该属性删除;
S2、对若干个属性进行计算,衍生出新的属性;
该步骤实质上是指标衍生的过程,通过多个变量的计算衍生出新的有意义的变量可以根据现有技术中已有的方式实现;
S3、若属性为数值型的属性,将该数值型的属性的所有属性值从小到大进行排序,获得在预设位置的分位数,将大于所述分位数的属性值替换为所述分位数;预设位置为所有属性值的总数量与预设比值的乘积;
该步骤实质上是对一个属性的极大值的处理,避免不合理的极大值影响后续计算的结果。预设比值可以根据实际需要进行确定,例如预设位置为总数量*99%。对数值型的属性,计算分布的X%分位数,将大于X%分位数的属性值替换为X%分位数。X%分位数为将变量所有属性值从小到大排序,排名在总样本量*X%的那个属性值,即小于X%分位数的样本量占总样本量的X%。
在步骤S120中,若某个属性下的某个属性值中正样本比例远远大于全量样本中正样本的比例,则认为这个属性的这个属性值对正样本是正相关的,反之则为负相关,即对于数值型的属性,正样本的比例随着属性的属性值的增大而增大,则认为这个属性的这个属性值对正样本是正相关的,反之则为负相关。因此定义信息值(IV值,Information Value),评估一个变量对正样本的判断量(影响程度),信息值越大,包含的信息越多,权重也就越大。
在一个实施例中,根据所述正样本和所述负样本计算每个属性的信息值的步骤可以包括:
S1201、通过分箱法获取抽样样本的所有分箱,其中所述抽样样本包括所述正样本和所述负样本;
分箱为将抽样样本的数据分为若干组,属性一般包括数值型的属性和分类型的属性,属性的性质不同,分箱获取的方法不同。在一个实施例中,获取抽样样本的所有分箱的步骤可以包括:
S1201a、若属性为数值型的属性,将抽样样本按照预设排序规则进行排序,并将排序后的抽样样本分成若干个分箱,得到抽样样本的所有分箱;
预设排序规则可以为从小到大排序或者从大到小排序。可选的,对排序后的抽样样本分箱时可以采用等频的方式,即每个分箱内的样本数目相同。另外,具体分箱的数目可以根据实际情况确定。例如,抽样样本有100个,将抽样样本从小到大排序,按等频的方式分成10个分箱,每个分箱内的样本数目相同,均为10。又例如,抽样样本有100个,将抽样样本从小到大排序,按等频的方式分成20个分箱,每个分箱内的样本数目相同,均为5。
S1201b、若属性为分类型的属性,将每个分类型的属性作为一个分箱,得到抽样样本的所有分箱;
若一个变量(属性)是分类型的属性,则不需要进行分箱,一个分类型的属性本身就是一个分箱,有多少个分类变量即为有多少个分箱。
S1202、计算每个分箱内的正样本占全部正样本的第一比例,以及每个分箱内的负样本占全部负样本的第二比例;
统计每个分箱内正样本占全部正样本的比例,以及负样本占全部负样本的比例。设第i个分箱中的正样本占全部正样本比例为ri,第i个分箱中的负样本占全部负样本比例为ni。
S1203、根据所述第一比例和所述第二比例的差值与所述第一比例和所述第二比例比值的自然对数的乘积,获得每个分箱的信息值;
根据下述公式计算第i个分箱的IV值:
S1204、对包含同一属性的所有分箱的信息值进行求和,获得每个属性的信息值;
变量X(属性X)的所有分箱的IV值之和为变量X的IV值,具体为:
在步骤S130中,步骤S120中已经获取每个属性的信息值,那么一个属性的信息值/所有属性的信息值的和,即可以得到该属性的权重。考虑到一般收集到的属性是很多的,如果计算出所有属性的权重则计算量较大,因此在不影响用户价值评分准确性的情况下,可以对一些属性进行剔除,因此在一个实施例中,根据每个属性的信息值与所有属性的信息值的和的比值,获得每个属性的权重的步骤可以包括:
S1301、按照预设筛选规则对所有属性进行筛选,获得保留的各个属性;
属性的筛选需要在保证用户价值评分准确性的基础上进行。对属性的筛选有多种实现方式,例如,在一个实施例中,按照预设筛选规则对所有属性进行筛选,获得保留的各个属性的步骤可以包括以下的任意一种或任意组合:
S1301a、若两个属性的相关性大于预设阈值,将两个属性中信息值较大的属性进行保留;
该步骤针对的是一些相关性很强的属性,因此预设阈值可以设置的较大些,例如预设阈值可以设置为0.8。计算两两变量的相关性,对于相关性很强的两个变量,只取其中一个变量用来计算最后的评分,例如将两个变量中IV值较小的变量剔除,保留IV值较大的变量,避免相似的变量重复评分。
在进行相关性剔除之后剩余的变量也很多,往往不需要保留那么多变量,因此可以采用步骤S1301b和S1301c对剩余的变量中进行二次筛选。
S1301b、将信息值大于预设值的属性进行保留;
该步骤是为了保留IV值较大的属性,所以预设值可以设置的较小,例如预设值设置为0.3,将IV值小于0.3的变量剔除。
S1301c、按照信息值从大到小的顺序,从信息值最大的属性开始选取预设个数的属性,将选取的属性进行保留,得到保留的各个属性;
预设个数可以根据实际需要进行确定,例如,保留IV值最大的前20%的变量,如总共有100个变量,保留IV值最高的20个变量。
需要说明的是,本发明并不对上述S1301a~S1301c的先后顺序进行限定。
S1302、根据保留的每个属性的信息值与保留的所有属性的信息值的和的比值,获得每个属性的权重;
前面计算了每个属性的IV值,且对属性进行了精简,接下来则利用属性的IV值,确定精简后的属性X的权重WX,计算公式如下:
上式中,IVX为精简后的属性的IV值,为精简后的所有属性的IV值的和,那么得到的权重WX为精简后的属性X的权重。
在步骤S140中,在一个实施例中,根据用户的若干个属性的属性值和对应的权重获得用户的用户价值评分之前,还可以包括步骤:
S1401、若属性为分类型的属性,根据所述第一比例和所述第二比例比值的自然对数获得每个分类型的属性的证据权重,将每个分类型的属性的属性值替换为对应的证据权重;
由于分类型的属性的属性值不可直接进行计算,因此需要将分类型的属性的属性值转成数值型再进行权重求和。可以根据下式计算分类型的属性的WOE值(Weight ofEvidence,证据权重):
S1402、对每个属性的属性值进行标准化,并将每个属性的属性值替换为标准化后的属性值;
该步骤中的每个属性为所有类型的属性,即包括分类型的属性和数值型的属性。分类型的属性的属性值先通过步骤S1401转换为数值型,然后再通过步骤S1402进行标准化,数值型的属性的属性值直接通过步骤S1402进行标准化。
由于每个属性的量级不一致且单位不一样,例如属性a的属性值都是万级的,属性b的属性值是100以下的值,若直接根据属性值*权重计算用户价值评分,那么即使属性a的权重很小,但由于其量级大,会使得属性a的分值非常大,因此需要将每个属性的属性值标准化,消除量纲和量级的影响。在一个实施例中,对每个属性的属性值进行标准化的步骤可以包括:
S1402a、计算同一属性下所有属性值的均值和标准差,得到每个属性的均值和标准差;
例如,对于某一属性X,计算属性X下所有属性值的均值,得到属性X的均值计算属性X下所有属性值的标准差,得到属性X的标准差为σ。对每一个属性都进行该处理,则得到每个属性的均值和标准差;
S1402b、计算每个属性的属性值和对应均值的差值与对应标准差的比值,得到各个标准化后的属性值;
根据属性X的均值和标准差为σ,通过下式对属性X下每个属性值进行标准化:
上式中,Xi为属性X的第i个属性值,为Xi标准后的属性值。
每个属性值均按上述方式进行处理,然后将所有属性值替换为标准化后的属性值,得到用于用户价值评分的数据。
获得各个属性的属性值以及的权重后,就可以根据下述公式确定每个用户的用户价值评分:
VX表示用户在属性X的取值,即属性值,WX表示属性X的权重。若在计算权重时未对属性进行筛选,则上式中的表示用户所有的属性,即计算用户中每一个属性的值与权重的乘积,然后将所有的乘积相加,得到该用户的用户价值评分。若在计算权重时对属性进行筛选,则上式中的表示对筛选后保留的该用户的所有的属性,即计算用户中保留的每一个属性的值与权重的乘积,然后将所有的乘积相加,得到该用户的用户价值评分。
基于同一发明构思,本发明还提供一种用户价值评分系统,下面结合附图对本发明系统的具体实施方式做详细描述。
如图2所示,一种用户价值评分系统,包括:
样本获取模块110,用于获取正样本和负样本,其中,所述正样本为产生实际价值的用户的若干个属性,所述负样本为未产生实际价值的用户的若干个属性,用户的属性包括数值型的属性和分类型的属性;
信息值计算模块120,用于根据所述正样本和所述负样本计算每个属性的信息值,其中所述信息值用于评估一个属性对所述正样本的影响程度;
权重获得模块130,用于根据每个属性的信息值与所有属性的信息值的和的比值,获得每个属性的权重;
用户价值评分模块140,用于根据用户的若干个属性的属性值和对应的权重获得用户的用户价值评分。
上述用户价值评分系统可以运行在终端中,例如电脑或者手机中。该系统根据属性的属性值和属性的权重对用户价值进行评分,由于用户价值的判断基于客观数据,因此能够客观判断用户价值,提高了用户价值判断的准确性。为了更好地理解该方法,下面对各个模块进行详细介绍。
用户的属性包括用户行为和用户基本信息,用户行为指的是用户通过中间资源购买、使用和评价某种产品的记录,同时辅以用户资源产品自身及环境的信息,用户基本信息也可以称之为用户基本属性,一般包括用户的姓名、年龄和性别等等。正样本为产生实际价值的用户的属性,负样本为未产生实际价值的用户的属性,是否产生实际价值可以根据实际场景进行确定。
样本获取模块110获取正负样本的方式有很多种,例如,在一个实施例中,样本获取模块110获取所有用户的属性,对每个属性进行清洗,获得属性的全量样本;按照预设的正样本和负样本的比例,从所述全量样本中选取正样本和负样本。
样本获取模块110对数据进行清洗的方式有很多种,例如,在一个实施例中,样本获取模块110在获取的某条记录中属性的属性值不在设定范围内时,将该条记录删除或者将该属性值替换为空值;对若干个属性进行计算,衍生出新的属性;在属性为数值型的属性时,将该数值型的属性的所有属性值从小到大进行排序,获得在预设位置的分位数,将大于所述分位数的属性值替换为所述分位数;预设位置为所有属性值的总数量与预设比值的乘积;
在一个实施例中,所述信息值计算模块120可以包括:
分箱获取单元1201,用于通过分箱法获取抽样样本的所有分箱,其中所述抽样样本包括所述正样本和所述负样本;
比例计算单元1202,用于计算每个分箱内的正样本占全部正样本的第一比例,以及每个分箱内的负样本占全部负样本的第二比例;
分箱信息值获得单元1203,用于根据所述第一比例和所述第二比例的差值与所述第一比例和所述第二比例比值的自然对数的乘积,获得每个分箱的信息值;
属性信息值获得单元1204,用于对包含同一属性的所有分箱的信息值进行求和,获得每个属性的信息值。
在一个实施例中,分箱获取单元1201在属性为数值型的属性时,将抽样样本按照预设排序规则进行排序,并将排序后的抽样样本分成若干个分箱,得到抽样样本的所有分箱;在属性为分类型的属性时,将每个分类型的属性作为一个分箱,得到抽样样本的所有分箱。
权重获得模块130根据一个属性的信息值/所有属性的信息值的和,得到该属性的权重。在保证用户价值评分准确性的基础上,为了降低计算量,在一个实施例中,权重获得模块130按照预设筛选规则对所有属性进行筛选,获得保留的各个属性;根据保留的每个属性的信息值与保留的所有属性的信息值的和的比值,获得每个属性的权重。
在一个实施例中,权重获得模块130在两个属性的相关性大于预设阈值时,将两个属性中信息值较大的属性进行保留;将信息值大于预设值的属性进行保留;按照信息值从大到小的顺序,从信息值最大的属性开始选取预设个数的属性,将选取的属性进行保留,得到保留的各个属性。
在一个实施例中,所述用户价值评分模块140根据用户的若干个属性的属性值和对应的权重获得用户的用户价值评分之前,还用于在属性为分类型的属性时,根据所述第一比例和所述第二比例比值的自然对数获得每个分类型的属性的证据权重,将每个分类型的属性的属性值替换为对应的证据权重,对每个属性的属性值进行标准化,并将每个属性的属性值替换为标准化后的属性值。
在一个实施例中,所述用户价值评分模块140计算同一属性下所有属性值的均值和标准差,得到每个属性的均值和标准差,计算每个属性的属性值和对应均值的差值与对应标准差的比值,得到各个标准化后的属性值。
获得各个属性的属性值以及的权重后,用户价值评分模块140就可以根据下述公式确定每个用户的用户价值评分:
VX表示用户在属性X的取值,WX表示属性X的权重。若在计算权重时未对属性进行筛选,则上式中的表示用户所有的属性,即用户价值评分模块140计算用户中每一个属性的值与权重的乘积,然后将所有的乘积相加,得到该用户的用户价值评分。若在计算权重时对属性进行筛选,则上式中的表示筛选后保留的该用户的所有的属性,即用户价值评分模块140计算用户中保留的每一个属性的值与权重的乘积,然后将所有的乘积相加,得到该用户的用户价值评分。
上述用户价值评分方法和系统,根据用户属性自适应地自动化计算用户价值评分,有新的属性加进来的时候只需计算新进来的属性的IV值,就可以快速地更新各个属性的权重,提高了用户价值判断的准确性和便捷性。根据本发明提供的用户价值评分,可以准确对用户分层管理,有助于筛选高价值用户,对高价值用户给予更多关注,提升高价值用户群体的质量,也可作为运营分析的市场监控,若发现分值的分布有显著变化,则反馈这个异常,由分析师进一步分析产生异常的原因,降低市场风险等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。