用户特征数据的计算方法和装置
技术领域
本申请涉及互联网技术领域,尤其涉及一种用户特征数据的计算方法和装置。
背景技术
目前,互联网中会记录用户的活动数据,通过用户的活动数据可以计算出用户的特征数据,例如,用户的喜好、活动轨迹、消费能力等。但往往由于互联网中记录的单个用户的数据量过少(如数据缺失或非常稀疏等),所以可能会导致用户特征数据的计算不准确,而整个互联网中记录的所有的用户活动数据量又过多,无法从中筛选出用于某一个用户特征数据计算的关联活动数据,或由于互联网的数据量过大,导致运算速度过慢等。
发明内容
本申请的目的旨在至少在一定程度上解决上述的技术问题之一。
为此,本申请的第一个目的在于提出一种用户特征数据的计算方法,该方法针对互联网中的海量数据进行了筛选,通过选取与用户最相关的多个关联用户的活动数据进行特征数据的计算,减少了数据的计算量,提高了计算速度。
本申请的第二个目的在于提出一种用户特征数据的计算装置。
为了实现上述目的,本申请第一方面实施例的用户特征数据的计算方法,包括:获取用户的活动数据,并根据所述用户的活动数据确定与所述用户关联的多个关联用户;根据所述用户的活动数据分别建立所述用户与所述多个关联用户之间的多个特征向量,并根据所述多个特征向量分别计算所述用户与所述多个关联用户之间的多个关联度;根据所述多个关联度从所述多个关联用户中选择多个参考用户;以及根据所述多个参考用户计算所述用户的特征数据。
本申请实施例的用户特征数据的计算方法,可先获取用户的活动数据,并根据用户的活动数据确定与用户关联的多个关联用户,之后可根据用户的活动数据分别建立用户与多个关联用户之间的多个特征向量,并根据多个特征向量分别计算用户与多个关联用户之间的多个关联度,然后,可根据多个关联度从多个关联用户中选择多个参考用户,最后,可根据多个参考用户计算用户的特征数据,即通过针对互联网中的海量数据进行了筛选,通过选取与用户最相关的多个关联用户的活动数据进行特征数据的计算,减少了数据的计算量,提高了计算速度。
为了实现上述目的,本申请第二方面实施例的用户特征数据的计算装置,包括:获取模块,用于获取用户的活动数据,并根据所述用户的活动数据确定与所述用户关联的多个关联用户;第一计算模块,用于根据所述用户的活动数据分别建立所述用户与所述多个关联用户之间的多个特征向量,并根据所述多个特征向量分别计算所述用户与所述多个关联用户之间的多个关联度;选择模块,用于根据所述多个关联度从所述多个关联用户中选择多个参考用户;以及第二计算模块,用于根据所述多个参考用户计算所述用户的特征数据。
本申请实施例的用户特征数据的计算装置,可通过获取模块获取用户的活动数据,并根据用户的活动数据确定与用户关联的多个关联用户,第一计算模块根据用户的活动数据分别建立用户与多个关联用户之间的多个特征向量,并根据多个特征向量分别计算用户与多个关联用户之间的多个关联度,选择模块根据多个关联度从多个关联用户中选择多个参考用户,第二计算模块根据多个参考用户计算用户的特征数据,即通过针对互联网中的海量数据进行了筛选,通过选取与用户最相关的多个关联用户的活动数据进行特征数据的计算,减少了数据的计算量,提高了计算速度。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本申请一个实施例的用户特征数据的计算方法的流程图;
图2是根据本申请另一个实施例的用户特征数据的计算方法的流程图;
图3是根据本申请一个实施例的用户特征数据的计算装置的结构示意图;
图4是根据本申请一个实施例的第二计算模块的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的用户特征数据的计算方法和装置。
图1是根据本申请一个实施例的用户特征数据的计算方法的流程图。如图1所示,该用户特征数据的计算方法可以包括:
S101,获取用户的活动数据,并根据用户的活动数据确定与用户关联的多个关联用户。
其中,在本申请的实施例中,用户的活动数据可理解为用户在互联网中进行操作(例如,搜索操作、广告选择操作、浏览操作等)时所返回的结果。可以基于对历史用户的行为数据的经验观察以及历史用户的社交活动数据来理解用户的活动数据。
具体地,可先获取用户的活动数据,之后可根据用户的活动数据找到与该用户的活动数据有关联的多个用户,以作为该用户的多个关联用户。例如,以活动数据为用户X0选择查看某个广告为例,可根据该活动数据找到其他同样选择查看该广告的用户Xi,并将这些用户Xi作为与用户X0关联的多个关联用户Xi。可以理解,关联用户可以是该用户的社会关系圈中的好友,还可以是与该用户的活动数据有关联的陌生人。
S102,根据用户的活动数据分别建立用户与多个关联用户之间的多个特征向量,并根据多个特征向量分别计算用户与多个关联用户之间的多个关联度。
具体而言,在本申请的实施例中,可先分别从用户的活动数据中挑选出用户与每个关联用户之间的多个特征变量,并将多个特征变量进行组合以建立用户与每个关联用户之间的特征向量;对用户与每个关联用户之间的特征向量进行数值化和归一化处理,并根据数值化和归一化处理之后的用户与每个关联用户之间的特征向量,及特征向量中的每个特征变量的预设权重值,计算用户与每个关联用户之间的关联度。其中,在本申请的实施例中,特征向量可包括但不限于活动数据的用途、活动数据的发生地、活动数据的大小和活动数据的发生次数等。
更具体地,可先从用户的活动数据中挑选出用户X0与关联用户Xi之间有关联的信息(即关联的活动数据)以作为用户X0与关联用户Xi之间的特征变量,并将这些变量组合以建立用户X0与关联用户Xi之间的特征向量,即该特征向量中的元素可分别为用户X0与关联用户Xi之间关联的活动数据的用途、用户X0与关联用户Xi之间关联的活动数据的发生地、用户X0与关联用户Xi之间关联的活动数据的大小和用户X0与关联用户Xi之间关联的活动数据的发生次数等。然后,可对用户X0与关联用户Xi之间的特征向量进行数值化和归一化处理,并根据数值化和归一化处理之后的特征向量及特征向量中的每个特征变量的权重值,计算出用户X0与关联用户Xi之间关联度。可以理解,关联度越大,表示用户X0与关联用户Xi的关系越亲密。
例如,以用户X0与关联用户Xi之间的特征向量为I={A,B,C,D}为例,其中,A为关联活动数据的用途,B为关联活动数据的发生地,C为关联活动数据的大小,D为关联活动数据的发生次数。可先对用户X0与关联用户Xi之间的特征向量I进行数值化处理,由于特征向量I中只有关联活动数据的用途特征A和关联活动数据的发生地B不是数值,因此可对这两个特征变量进行数值化,即:假设关联活动数据的用途特征A为Categorical类型,因此,可先根据活动数据的种类取值及其业务含义进行数值化,关系越强烈取值越大,即将上述关联活动数据用途特征A数值化为AX,之后,计算用户X0与每个关联用户Xi的关联活动数据发生地特征B之间的物理距离,根据物理距离从高到低划分为1至M个等级,即将上述关联活动数据发生地特征B数值化为BX。然后,对每个特征向量中的每个特征变量归一化处理:将上述进行数值化之后的特征向量中的每个特征变量(即AX、BX、C、D)进行归一化处理,分别得到归一化之后的特征变量(即AY、BY、C、D)。之后,可根据数值化和归一化之后的用户X0与每个关联用户Xi之间的特征向量(即AY、BY、C、D)、及该特征向量中每个特征变量的预设权重值,计算出用户X0与每个关联用户Xi之间的关联度,其中,如上述特征变量AY的预设权重值为WA、特征变量BY的预设权重值WB、特征变量C的预设权重值WC和特征变量D的预设权重值WD,可通过如下公式得到用户X0与每个关联用户Xi之间的关联度Ki:Ki=(AYWA+BYWB+CWC+DWD),其中,i为第i个关联用户,可以理解,Di越大表示用户X0与关联用户Xi之间的关系越亲密。
S103,根据多个关联度从多个关联用户中选择多个参考用户。
具体而言,在本申请的实施例中,可根据多个关联度对多个关联用户进行排序,并根据排序结果选择关联度最大的多个关联用户作为多个参考用户。也就是说,由于关联度越大表示用户X0与关联用户Xi之间的关系越亲密,所以对关联度进行从大到小的排序,将排在靠前的多个关联度所对应的关联用户Xi作为用户X0的多个参考用户。由此,可以使得计算结果能够更加的准确。
S104,根据多个参考用户计算用户的特征数据。
具体而言,在本申请的实施例中,可先获取多个参考用户的特征数据,之后根据用户与多个参考用户之间的关联度和多个参考用户的特征数据计算用户的特征数据。更具体地,可先从系统的数据库中提取多个参考用户的特征数据Vi(如用户的喜好、活动轨迹、消费能力等),并对每个参考用户的特征数据Vi进行初始化,之后,可对用户X0与每个参考用户之间的关联度和每个参考用户的初始化后的特征数据Vi进行加权求和,得到该用户X0的特征数据V0:V0=(K1V1+K2V2+……+KnVn)/ΣKi,其中,Ki为第i个参考用户与用户X0的关联度,n为参考用户的个数。
本申请实施例的用户特征数据的计算方法,可先获取用户的活动数据,并根据用户的活动数据确定与用户关联的多个关联用户,之后可根据用户的活动数据分别建立用户与多个关联用户之间的多个特征向量,并根据多个特征向量分别计算用户与多个关联用户之间的多个关联度,然后,可根据多个关联度从多个关联用户中选择多个参考用户,最后,可根据多个参考用户计算用户的特征数据,即通过针对互联网中的海量数据进行了筛选,通过选取与用户最相关的多个关联用户的活动数据进行特征数据的计算,减少了数据的计算量,提高了计算速度。
为了使得本领域的技术人员能够更加清楚地了解本申请,下面可举例说明,即可以特征数据为消费能力为例,则用户特征数据的计算方法可包括以下步骤:
举例而言,如图2所示,该用户特征数据的计算方法可包括:可先获取用户X0的非消费类支付数据(即上述的活动数据),并可根据该用户X0的非消费类支付数据确定与该用户关联的多个关联用户(如支付关系人)(S201),其中,支付关系人可理解用户X0在第三方支付平台进行非消费支付时所涉及到的社会关系人等。之后,可根据用户X0的非消费类支付数据分别建立用户与多个支付关系人之间的多个特征向量,并根据该多个特征向量分别计算用户与多个支付关系人之间的多个关联度(S202)。然后,根据多个关联度从该多个支付关系人中选择多个参考用户(S203)。最后,根据该多个参考用户计算用户的消费能力(即上述的特征数据)(S204)。
具体地,在确定与用户X0关联的多个支付关系人之后,可从非消费类支付数据中的支付信息(支付类型、支付场景、支付次数、支付金额、支付发生地、支付用途等)中挑选出与关联度最相关的特征变量,以组成用户X0与每个支付关系人之间的特征向量,如特征向量I={A,B,C,D},其中,A为支付用途,B为支付发生地,C为支付金额,D为支付次数。然后,对用户X0与每个支付关系人之间的特征向量进行数值化和归一化处理,其中可举例描述对特征向量进行数值化和归一化处理的过程:
例如,数字化的实现过程可为:假设支付用途A可以分为交易、红包、借款或还款、家庭转账等,可通过数值来间接说明用户与支付关系人之间的远近,即可将上述用途分别数字化为1、2、3、4、……,其中,如果支付用途A是家庭转账类的,则表明用户与支付关系人之间关系比较亲近,可能为夫妻、子女等;如果支付用途A是交易类,可能亲近关系一般,为买家与卖家等;计算X0与Xi的支付发生地特征变量B之间的物理距离,将物理距离从高到低划分为M个区间,分别取值为1~M;支付金额和支付次数原本就是数值,因此不需要再数字化。
归一化处理的实现过程为:将上述进行了数字化之后的特征向量进行归一化计算,以特征向量中的支付用途A为例,假设支付用途A数字化为1、2、3、4后,再对每个用户的取值进行归一化,其中归一化公式可如下所示:(x-min)/(max,min),其中,x为用户针对支付用途A的数值,max为支付用途A中的最大值,min为支付用途A中的最小值,例如,支付用途A的取值为2的用户归一化为(2-1)/(4-1),以此类推。
之后,可对数值化和归一化处理之后的特征向量和特征向量中的每个特征变量的预设权重值进行加权求和,得到用户X0与每个支付关系人之间的关联度。然后,挑选出排序靠前的关联度对应的多个支付关系人作为参考用户,并提取参考用户在最近某个时间段内的消费类支付数据,如支付金额、支付场景等,之后,可根据每个参考用户的支付金额初始化每个参考用户的消费能力Vi,然后,对每个参考用户之间的关联度Ki和每个参考用户的消费能力Vi进行加权求和,得到用户X0的消费能力V0=(K1V1+K2V2+……+KnVn)/ΣKi。
为了实现上述实施例,本申请还提出了一种用户特征数据的计算装置。
图3是根据本申请一个实施例的用户特征数据的计算装置的结构示意图。如图3所示,该用户特征数据的计算装置可以包括:获取模块10、第一计算模块20、选择模块30和第二计算模块40。
具体地,获取模块10可用于获取用户的活动数据,并根据用户的活动数据确定与用户关联的多个关联用户。其中,在本申请的实施例中,用户的活动数据可理解为用户在互联网中进行操作(例如,搜索操作、广告选择操作、浏览操作等)时所返回的结果。可以基于对历史用户的行为数据的经验观察以及历史用户的社交活动数据来理解用户的活动数据。
更具体地,获取模块10可先获取用户的活动数据,之后可根据用户的活动数据找到与该用户的活动数据有关联的多个用户,以作为该用户的多个关联用户。例如,以活动数据为用户X0选择查看某个广告为例,获取模块10可根据该活动数据找到其他同样选择查看该广告的用户Xi,并将这些用户Xi作为与用户X0关联的多个关联用户Xi。可以理解,关联用户可以是该用户的社会关系圈中的好友,还可以是与该用户的活动数据有关联的陌生人。
第一计算模块20可用于根据用户的活动数据分别建立用户与多个关联用户之间的多个特征向量,并根据多个特征向量分别计算用户与多个关联用户之间的多个关联度。具体而言,在本申请的实施例中,第一计算模块20可具体用于:分别从用户的活动数据中挑选出用户与每个关联用户之间的多个特征变量,并将多个特征变量进行组合以建立用户与每个关联用户之间的特征向量;对用户与每个关联用户之间的特征向量进行数值化和归一化处理,并根据数值化和归一化处理之后的用户与每个关联用户之间的特征向量,及特征向量中的每个特征变量的预设权重值,计算用户与每个关联用户之间的关联度。其中,在本申请的实施例中,特征向量可包括但不限于活动数据的用途、活动数据的发生地、活动数据的大小和活动数据的发生次数等。
更具体地,第一计算模块20可先从用户的活动数据中挑选出用户X0与关联用户Xi之间有关联的信息(即关联的活动数据)以作为用户X0与关联用户Xi之间的特征变量,并将这些变量组合以建立用户X0与关联用户Xi之间的特征向量,即该特征向量中的元素可分别为用户X0与关联用户Xi之间关联的活动数据的用途、用户X0与关联用户Xi之间关联的活动数据的发生地、用户X0与关联用户Xi之间关联的活动数据的大小和用户X0与关联用户Xi之间关联的活动数据的发生次数等。然后,可对用户X0与关联用户Xi之间的特征向量进行数值化和归一化处理,并根据数值化和归一化处理之后的特征向量及特征向量中的每个特征变量的权重值,计算出用户X0与关联用户Xi之间关联度。可以理解,关联度越大,表示用户X0与关联用户Xi的关系越亲密。
例如,以用户X0与关联用户Xi之间的特征向量为I={A,B,C,D}为例,其中,A为关联活动数据的用途,B为关联活动数据的发生地,C为关联活动数据的大小,D为关联活动数据的发生次数。可先对用户X0与关联用户Xi之间的特征向量I进行数值化处理,由于特征向量I中只有关联活动数据的用途特征A和关联活动数据的发生地B不是数值,因此可对这两个特征变量进行数值化,即:假设关联活动数据的用途特征A为Categorical类型,因此,第一计算模块20可先根据活动数据的种类取值及其业务含义进行数值化,关系越强烈取值越大,即将上述关联活动数据用途特征A数值化为AX,之后,计算用户X0与每个关联用户Xi的关联活动数据发生地特征B之间的物理距离,根据物理距离从高到低划分为1至M个等级,即将上述关联活动数据发生地特征B数值化为BX。然后,对每个特征向量中的每个特征变量归一化处理:将上述进行数值化之后的特征向量中的每个特征变量(即AX、BX、C、D)进行归一化处理,分别得到归一化之后的特征变量(即AY、BY、C、D)。之后,可根据数值化和归一化之后的用户X0与每个关联用户Xi之间的特征向量(即AY、BY、C、D)、及该特征向量中每个特征变量的预设权重值,计算出用户X0与每个关联用户Xi之间的关联度,其中,如上述特征变量AY的预设权重值为WA、特征变量BY的预设权重值WB、特征变量C的预设权重值WC和特征变量D的预设权重值WD,可通过如下公式得到用户X0与每个关联用户Xi之间的关联度Ki:Ki=(AYWA+BYWB+CWC+DWD),其中,i为第i个关联用户,可以理解,Di越大表示用户X0与关联用户Xi之间的关系越亲密。
选择模块30可用于根据多个关联度从多个关联用户中选择多个参考用户。具体而言,在本申请的实施例中,选择模块30可具体用于:根据多个关联度对多个关联用户进行排序,并根据排序结果选择关联度最大的多个关联用户作为多个参考用户。也就是说,由于关联度越大表示用户X0与关联用户Xi之间的关系越亲密,所以对关联度进行从大到小的排序,将排在靠前的多个关联度所对应的关联用户Xi作为用户X0的多个参考用户。由此,可以使得计算结果能够更加的准确。
第二计算模块40可用于根据多个参考用户计算用户的特征数据。具体而言,在本申请的实施例中,如图4所示,该第二计算模块40可包括获取单元41和计算单元42。具体地,获取单元41可用于获取多个参考用户的特征数据。计算单元42可用于根据用户与多个参考用户之间的关联度和多个参考用户的特征数据计算用户的特征数据。
更具体地,获取单元41可先从系统的数据库中提取多个参考用户的特征数据Vi(如用户的喜好、活动轨迹、消费能力等)。计算单元42对每个参考用户的特征数据Vi进行初始化,之后,可对用户X0与每个参考用户之间的关联度和每个参考用户的初始化后的特征数据Vi进行加权求和,得到该用户X0的特征数据V0:V0=(K1V1+K2V2+……+KnVn)/ΣKi,其中,Ki为第i个参考用户与用户X0的关联度,n为参考用户的个数。
本申请实施例的用户特征数据的计算装置,可通过获取模块获取用户的活动数据,并根据用户的活动数据确定与用户关联的多个关联用户,第一计算模块根据用户的活动数据分别建立用户与多个关联用户之间的多个特征向量,并根据多个特征向量分别计算用户与多个关联用户之间的多个关联度,选择模块根据多个关联度从多个关联用户中选择多个参考用户,第二计算模块根据多个参考用户计算用户的特征数据,即通过针对互联网中的海量数据进行了筛选,通过选取与用户最相关的多个关联用户的活动数据进行特征数据的计算,减少了数据的计算量,提高了计算速度。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。