一种基于多维度用户画像的电商用户行为数据模拟的方法及系统转让专利

申请号 : CN202110957980.4

文献号 : CN113487117B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 袁梦杨美红郭莹张虎曹文泰孙明辉王天伟白杨

申请人 : 山东省计算中心(国家超级计算济南中心)

摘要 :

本发明涉及一种基于多维度用户画像的电商用户行为数据模拟的方法及系统,包括以下步骤:步骤1:构建电商平台基础数据集;电商平台基础数据集是指包括电商平台各种商品信息的集合,步骤2:构建商品间的关联规则表;商品间的关联规则是用来描述两个或多个商品之间的关联性;步骤3:构建多维度用户画像;先设计一个多维度用户画像框架,再利用该多维度用户画像框架依据使用者的不同需求实例出具体的多维度用户画像;步骤4:模拟生成电商用户行为数据;包括用户基本信息、用户购物数据和用户浏览记录数据。本发明能够快速模拟出大量电商用户的行为数据,大大降低了大数据教学和科研人员获取实验数据的难度。

权利要求 :

1.一种基于多维度用户画像的电商用户行为数据模拟的方法,其特征在于,包括以下步骤:步骤1:构建电商平台基础数据集;

电商平台基础数据集是指包括电商平台各种商品信息的集合,其中包括商品一级分类表、商品二级分类表、商品信息表;

步骤2:构建商品间的关联规则表;

关联规则是形式为X→Y的蕴涵式,X和Y分别称为关联规则的先导和后继,商品间的关联规则是用来描述两个或多个商品之间的关联性;

步骤3:构建多维度用户画像;

先设计一个多维度用户画像框架,再利用该多维度用户画像框架依据使用者的不同需求实例出具体的多维度用户画像;具体是指:多维度用户画像框架包括4个维度:用户偏好维度、用户价值维度、用户活跃维度及用户习惯维度,这四个维度分别从四个层面描绘用户的特征;

用户偏好维度是指能体现用户购物偏好的维度,用户偏好维度包括若干属性;使用者可依据实际需求调整用户偏好维度中属性的数量和内容;

用户价值维度是体现用户对商家的商业价值的维度,且体现用户部分的购物规律;用户活跃维度体现用户在平台的活跃度,用户活跃维度主要影响用户单位时间内产生的数据量,活跃度越高,单位时间内产生的数据量越大,用户活跃维度包括3种属性:低活跃、中活跃、高活跃,分别表示用户在电商平台的三个级别的活跃度;

用户习惯维度体现用户使用平台的时间段分布,用户习惯维度包括4种属性:上午、下午、傍晚、深夜;

在构建完多维度用户画像框架之后,使用者根据需求在框架的每个维度中选取相应的属性进行组合便快速得到一个多维度用户画像,其中,多维度用户画像的用户偏好维度是一个多选维度,用户价值维度、用户活跃维度和用户习惯维度是单选维度;

步骤4:模拟生成电商用户行为数据;

电商用户行为数据包括用户基本信息、用户购物数据和用户浏览记录数据,分别存入用户基本信息表、用户购物数据表和用户浏览记录数据表中。

2.根据权利要求1所述的一种基于多维度用户画像的电商用户行为数据模拟的方法,其特征在于,步骤1中,使用网络爬虫技术从电商web平台爬取大量的商品信息,对爬取的商品信息进行清洗、归纳、整理后存入电商平台基础数据集的各个数据表中,电商平台基础数据集便构建完成。

3.根据权利要求1所述的一种基于多维度用户画像的电商用户行为数据模拟的方法,其特征在于,步骤4中,通过数据生成算法模拟生成电商用户行为数据,具体包括步骤如下:(1)生成用户基本信息:随机生成一个虚拟电商用户的个人基本信息,包括用户ID、用户名、年龄、性别和注册渠道;年龄的值为满足均值为参数a、方差为参数b的正态分布函数且范围在14到80之间的正整数;

(2)生成用户购物数据:模拟生成一个用户一年内的购物数据,且在生成的购物数据中预埋进输入的用户画像和商品间关联规则的价值信息;

(3)生成用户浏览记录数据:即模拟生成一个用户一年内的浏览记录数据。

4.根据权利要求3所述的一种基于多维度用户画像的电商用户行为数据模拟的方法,其特征在于,步骤(2)的执行步骤为:首先,计算出该用户一年内的最后三个月是否购物,若购物,则生成12个月的购物数据,否则,则只生成前9个月的购物数据;

然后,计算每个月的购物数量N,并逐月逐条生成购物数据;在生成一条购物数据时,从电商平台基础数据集中挑选一件商品,计算购买该件商品的具体时间和商品评分模块计算用户对这件商品的评分,将商品、购买该件商品的具体时间及用户对这件商品的评分合成一条购物数据存入用户购物数据表中;

在每生成完一条购物数据后都判断购买该件商品是否会触发存在于商品间的关联规则表中的关联规则,若触发,则生成一条能体现商品间关联规则的购物数据,若不触发,则继续生成下一条购物数据。

5.根据权利要求3所述的一种基于多维度用户画像的电商用户行为数据模拟的方法,其特征在于,步骤(3)的具体实现步骤包括:依据该用户的多维度用户画像中的用户活跃维度来随机出该用户每月浏览记录数量;

依据用户偏好维度挑选的商品;

依据用户习惯维度随机出浏览时间;

最终生成一个用户一年内的浏览记录数,包括该用户每月浏览记录数量、挑选的商品及浏览时间。

6.一种基于多维度用户画像的电商用户行为数据模拟系统,其特征在于,用于实现权利要求1‑5任一所述的一种基于多维度用户画像的电商用户行为数据模拟的方法,包括电商平台基础数据集构建单元、商品间的关联规则表构建单元、多维度用户画像构建单元及电商用户行为数据模拟生成单元;

电商平台基础数据集构建单元用于实现所述步骤1;商品间的关联规则表构建单元用于实现所述步骤2;多维度用户画像构建单元用于实现所述步骤3;电商用户行为数据模拟生成单元用于实现所述步骤4。

7.根据权利要求6所述的一种基于多维度用户画像的电商用户行为数据模拟系统,其特征在于,电商用户行为数据模拟生成单元包括月份计算模块、每月购物数量模块、购物商品选择模块、关联规则触发模块、一般购物时间计算模块、商品评分模块、关联规则购物时间计算模块、关联规则商品选择模块、每月浏览数量模块、每月浏览商品选择模块和浏览时间计算模块;

调用月份计算模块计算出该用户一年内的最后三个月是否购物,若购物,则生成12个月的购物数据,否则,则只生成前9个月的购物数据;

调用每月购物数量模块计算每个月的购物数量N,并逐月逐条生成购物数据;在生成一条购物数据时,调用购物商品选择模块从电商平台基础数据集中挑选一件商品,调用一般购物时间计算模块计算购买该件商品的具体时间和调用评分模块计算用户对这件商品的评分,将商品、购买该件商品的具体时间及用户对这件商品的评分合成一条购物数据存入用户购物数据表中;

在每生成完一条购物数据后都调用关联规则触发模块判断购买该件商品是否会触发存在于商品间的关联规则表中的关联规则,若触发,则调用关联规则商品选择模块生成一条能体现商品间关联规则的购物数据,若不触发,则继续生成下一条购物数据;

调用每月浏览数量模块依据该用户的多维度用户画像中的用户活跃维度来随机出该用户每月浏览记录数量;

调用每月浏览商品选择模块依据用户偏好维度挑选的商品;

调用浏览时间计算模块依据用户习惯维度随机出浏览时间。

说明书 :

一种基于多维度用户画像的电商用户行为数据模拟的方法及

系统

技术领域

[0001] 本发明涉及计算机数据模拟技术领域,特别是涉及一种基于多维度用户画像逆向模拟生成带有预埋属性的电商用户行为数据的方法及系统。

背景技术

[0002] 随着移动互联网的迅猛发展和云计算、物联网等新服务与新应用的日益丰富,网上数据流量呈现迅猛发展态势,全球数据量每两年大约增加一倍,海量数据推动着信息社会迎来了大数据时代。大数据已经对我们产生了深远的影响,其应用涉及生活的方方面面,各大网络平台每天产生的数据以PB级增长,企业对大数据人才的需求逐年攀升,国家及各大高校也越来越重视大数据人才的培养。学习大数据最基本也是最重要的就是要有优质的数据,如果说算法是系统的骨架,那么数据就是系统的血液。然而,实验数据源的获取一直困扰着大数据各方面的研究,我们虽然身处数据的时代,但是由于数据涉及各单位内部具体事务,考虑到市场竞争及保密等问题,各单位绝少会将自己的数据提供给研究人员,即便利用爬虫技术也很难获取,从而造成了明明有大量数据源存在,但研究人员却得不到数据源的不争事实,某些公司可能会提供有接口,但收费往往十分昂贵。这就为大数据科研与教学中如数据挖掘、用户画像刻画、推荐系统构建等造成了相当大的难度。业界虽然一直努力构建公开可用的数据集供大数据相关研究者使用,如MovieLens、Book‑Crossing、Last.fm、Amazon Music等数据集,但是这类公开数据集往往表现出某些缺陷,包括:①隐私安全问题;②小数据集问题;③关键信息缺失问题;④数据多样性问题;⑤噪声问题;⑥伸缩性问题。
[0003] 目前,为了解决实验数据获取困难,方便快捷的获取优质的数据,在数据模拟领域主要有样本数据扩充技术和信息系统模拟数据生成技术。但是,样本数据扩充是一个由少生多的过程,目标是使生成的数据既能达到数据量要求,其特点是可以将原始数据中所隐含的先验知识和规则继承到扩充数据集中,使算法不依赖领域专家制定的先验知识和规则,正因为其扩充数据特性来自于原始数据,导致使用这类算法模拟生成数据时很难根据不同需求在扩充数据中预埋特定属性,会存在数据多样性不足问题;信息系统模拟数据生成解决的是在不方便或不可能使用真实数据时,生成信息系统正常运行所需的数据,重点通过对关系型数据库中依赖关系、规则的描述,从无到有的数据生成过程,要求生成的数据要满足指定的完整性约束条件,并且要符合指定的领域业务规则,还要求满足对数据集的特殊要求,但该类技术目前尚未形成完整、成熟的理论体系且针对具体领域没有固定的解决方案。
[0004] 通过以上对现有的数据生产技术的概述可以看出,目前的数据生成技术难以根据需求定制生成带有特定价值信息的海量仿真模拟数据。

发明内容

[0005] 本发明为了克服上述技术缺陷,提供了一种针对电商数据领域,能根据需求定制生成海量带有特定价值信息的用户行为仿真数据的方法。
[0006] 本发明还提供了一种基于多维度用户画像的电商用户行为数据模拟系统。
[0007] 术语解释:
[0008] 用户画像,又称用户角色,作为一种勾画目标用户、联系用户诉求与设计方向的有效工具,用户画像在各领域得到了广泛的应用。
[0009] 本发明的技术方案为:
[0010] 一种基于多维度用户画像的电商用户行为数据模拟的方法,包括以下步骤:
[0011] 步骤1:构建电商平台基础数据集;
[0012] 电商平台基础数据集是指包括电商平台各种商品信息的集合,其中包括商品一级分类表、商品二级分类表、商品信息表;步骤2:构建商品间的关联规则表;
[0013] 关联规则是形如X→Y的蕴涵式,X和Y分别称为关联规则的先导和后继,商品间的关联规则是用来描述两个或多个商品之间的关联性;步骤3:构建多维度用户画像;
[0014] 先设计一个多维度用户画像框架,再利用该多维度用户画像框架依据使用者的不同需求实例出具体的多维度用户画像;
[0015] 步骤4:模拟生成电商用户行为数据;
[0016] 电商用户行为数据包括用户基本信息、用户购物数据和用户浏览记录数据,分别存入用户基本信息表、用户购物数据表和用户浏览记录数据表中;
[0017] 进一步优选的,步骤1中,使用网络爬虫技术从电商web平台爬取大量的商品信息,对爬取的商品信息进行清洗、归纳、整理后存入电商平台基础数据集的各个数据表中,电商平台基础数据集便构建完成。
[0018] 进一步优选的,步骤3中,先设计一个多维度用户画像框架,再利用该多维度用户画像框架依据使用者的不同需求实例出具体的多维度用户画像,具体是指:
[0019] 多维度用户画像框架包括4个维度:用户偏好维度、用户价值维度、用户活跃维度及用户习惯维度,这四个维度分别从四个层面描绘用户的特征;
[0020] 用户偏好维度是指能体现用户购物偏好的维度,用户偏好维度包括若干属性;使用者可依据实际需求调整用户偏好维度中属性的数量和内容;
[0021] 用户价值维度是体现用户对商家的商业价值的维度,用户价值维度体现用户部分的购物规律,用户价值维度包括如下8种属性:重要价值、重要发展、重要保持、重要挽留、一般价值、一般发展、一般保持、一般挽留;重要价值是指:该类用户与企业交易频繁、交易量大,但长时间没有与企业进行交易,存在流失风险,该重要价值用户是企业利润的潜在来源;重要发展是指:该类用户购买量较大,但是从购买频率和近期购买时间来看交易不频繁,该类用户有很高的潜在价值,可采取针对性营销手段吸引他们;重要保持是指:该类用户与企业交易频繁、交易量大,且最近一次交易时间间隔短,实际贡献价值很高,是企业优质客户群;重要挽留是指:该类用户近一次交易时间短、购买金额大,但是购买频率较低,具有很高的潜在价值;一般价值是指:该类用户购买频率较高,但长时间没有与企业进行交易,且购买量很低,企业已很难从他们身上获取更多利润;一般发展是指:从购买频率、购买金额及近期购买情况来看,该类用户属于低价值用户;一般挽留是指:该类用户最近交易时间间隔短,但是购买频率和购买金额相对较低,无法立即给企业带来较大利润;
[0022] 用户活跃维度体现用户在平台的活跃度,用户活跃维度主要影响用户单位时间内产生的数据量,活跃度越高,单位时间内产生的数据量越大,用户活跃维度包括3种属性:低活跃、中活跃、高活跃,分别表示用户在电商平台的三个级别的活跃度;
[0023] 用户习惯维度体现用户使用平台的时间段分布,用户习惯维度包括4种属性:上午、下午、傍晚、深夜;
[0024] 在构建完多维度用户画像框架之后,使用者根据需求在框架的每个维度中选取相应的属性进行组合便快速得到一个多维度用户画像,其中,多维度用户画像的用户偏好维度是一个多选维度,用户价值维度、用户活跃维度和用户习惯维度是单选维度。
[0025] 进一步优选的,步骤4中,通过数据生成算法模拟生成电商用户行为数据,具体包括步骤如下:
[0026] (1)生成用户基本信息:随机生成一个虚拟电商用户的个人基本信息,包括用户ID、用户名(user_name)、年龄(age)、性别(gender)和注册渠道(channel);年龄的值为满足均值为参数a、方差为参数b的正态分布函数且范围在14到80之间的正整数;
[0027] (2)生成用户购物数据:模拟生成一个用户一年内的购物数据,且在生成的购物数据中预埋进输入的用户画像和商品间关联规则的价值信息,执行步骤为:
[0028] 首先,计算出该用户一年内的最后三个月是否购物,若购物,则生成12个月的购物数据,否则,则只生成前9个月的购物数据;
[0029] 然后,计算每个月的购物数量N,并逐月逐条生成购物数据;在生成一条购物数据时,从电商平台基础数据集中挑选一件商品(commodity),计算购买该件商品的具体时间(time)和调用商品评分模块计算用户对这件商品的评分(grade),将商品、购买该件商品的具体时间及用户对这件商品的评分合成一条购物数据存入用户购物数据表中;
[0030] 在每生成完一条购物数据后都判断购买该件商品是否会触发存在于商品间的关联规则表中的关联规则,若触发,则生成一条能体现商品间关联规则的购物数据,若不触发,则继续生成下一条购物数据;
[0031] (3)生成用户浏览记录数据:即模拟生成一个用户一年内的浏览记录数据;具体实现步骤包括:
[0032] 依据该用户的多维度用户画像中的用户活跃维度来随机出该用户每月浏览记录数量;
[0033] 依据用户偏好维度挑选的商品;
[0034] 依据用户习惯维度随机出浏览时间;
[0035] 最终生成一个用户一年内的浏览记录数,包括该用户每月浏览记录数量、挑选的商品及浏览时间。
[0036] 一种基于多维度用户画像的电商用户行为数据模拟系统,包括电商平台基础数据集构建单元、商品间的关联规则表构建单元、多维度用户画像构建单元及电商用户行为数据模拟生成单元;
[0037] 电商平台基础数据集构建单元用于实现所述步骤1;商品间的关联规则表构建单元用于实现所述步骤2;多维度用户画像构建单元用于实现所述步骤3;电商用户行为数据模拟生成单元用于实现所述步骤4。
[0038] 根据本发明优选的,电商用户行为数据模拟生成单元包括月份计算模块、每月购物数量模块、购物商品选择模块、关联规则触发模块、一般购物时间计算模块、商品评分模块、关联规则购物时间计算模块、关联规则商品选择模块、每月浏览数量模块、每月浏览商品选择模块和浏览时间计算模块;
[0039] 调用月份计算模块计算出该用户一年内的最后三个月是否购物,若购物,则生成12个月的购物数据,否则,则只生成前9个月的购物数据;
[0040] 调用每月购物数量模块计算每个月的购物数量N,并逐月逐条生成购物数据;在生成一条购物数据时,调用购物商品选择模块从电商平台基础数据集中挑选一件商品,调用一般购物时间计算模块计算购买该件商品的具体时间和调用评分模块计算用户对这件商品的评分,将商品、购买该件商品的具体时间及用户对这件商品的评分合成一条购物数据存入用户购物数据表中;
[0041] 在每生成完一条购物数据后都调用关联规则触发模块判断购买该件商品是否会触发存在于商品间的关联规则表中的关联规则,若触发,则调用关联规则商品选择模块生成一条能体现商品间关联规则的购物数据,若不触发,则继续生成下一条购物数据;
[0042] 调用每月浏览数量模块依据该用户的多维度用户画像中的用户活跃维度来随机出该用户每月浏览记录数量;
[0043] 调用每月浏览商品选择模块依据用户偏好维度挑选的商品;
[0044] 调用浏览时间计算模块依据用户习惯维度随机出浏览时间。
[0045] 月份计算模块通过传入用户的多维度用户画像userProfile来计算该用户一年内的最后三个月是否购物;具体执行步骤为:先取出用户的多维度用户画像userProfile中的用户价值属性value,再查看该用户价值value所对应的最近一次消费recency的值,若recency的值为高,则该用户最后三个月有P1的概率购物,1‑P1的概率不购物,若recency的值为低,则该用户最后三个月有P1的概率不购物,1‑P1的概率购物。
[0046] 每月购物数量模块通过传入用户的多维度用户画像userProfile来计算该用户每个月的购物数量;具体执行步骤为:先取出用户的多维度用户画像userProfile中的用户价值属性value,再查看该用户价值value所对应的消费频率frequency的值,最后,根据frequency的值随机出该月的购物数量N。
[0047] 购物商品选择模块通过传入用户的多维度用户画像userProfile从电商平台基础数据集中挑选一件商品;具体执行步骤为:先取出用户的多维度用户画像userProfile中的用户偏好属性preferences,根据preferences的值从商品一级分类表中选取一个一级分类firstCate,然后,从商品二级分类表中随机挑选一个该一级分类firstCate下的二级分类secondCate;再取出用户的多维度用户画像userProfile中的用户价值属性value,再查看该用户价值value所对应的消费金额money的值,根据money的值从选取的二级分类secondCate下选取一件商品commodity。
[0048] 一般购物时间计算模块生成一个用户的购物时间;具体执行步骤为:先从当年当月随机挑选一天,再取出用户的多维度用户画像userProfile中的用户习惯habit,根据habit的值选取一个一天内的时间戳。
[0049] 关联规则触发模块在购买一件商品后判断购买该件商品是否会触发关联规则表中的关联规则;具体执行步骤为:先获取已购买商品的二级分类secondCate,再查看商品间的关联规则表中是否有以这个二级分类为先导的关联规则,若没有,则不触发,若有,则有P6的概率触发,参数P6的取值范围为0.2‑1.0。
[0050] 关联规则商品选择模块用于当购买某件商品触发了关联规则表中的关联规则后,挑选一件符合该关联规则的商品;具体执行步骤为:先从商品间的关联规则表中获取该件商品对应的先导antecedent,再从该先导对应的所有后继中随机选择一个后继consequent,然后结合多维度用户画像从该后继对应的商品二级分类下选择一件商品。
[0051] 关联规则购物时间计算模块生成的是购买后继商品的时间,需要保证在购买先导商品之后。
[0052] 本发明的有益效果为:
[0053] 1、本发明能够快速模拟出大量电商用户的行为数据,大大降低了大数据教学和科研人员获取实验数据的难度。
[0054] 2、相比于真实数据,本发明生成的模拟数据不会涉及用户隐私安全问题。
[0055] 3、本发明使用者可根据需求生成不同规模的数据,解决了使用真实数据时会存在的数据集过小和伸缩性问题。
[0056] 4、本发明使用者可根据需求在模拟数据中预埋进特定的价值信息,使得数据能更好的满足特定的实验和教学场景。

附图说明

[0057] 图1为多维度用户画像框架示例图;
[0058] 图2为多维度用户画像示例图;
[0059] 图3为本发明模拟生成电商用户行为数据的架构示意图;
[0060] 图4为本发明生成用户基本信息的流程示意图;
[0061] 图5为生成用户购物数据的流程示意图;
[0062] 图6为月份计算模块工作流程示意图;
[0063] 图7为每月购物数量模块的工作流程示意图;
[0064] 图8为购物商品选择模块的工作流程示意图;
[0065] 图9为一般购物时间计算模块的工作流程示意图;
[0066] 图10为商品评分模块的工作流程示意图;
[0067] 图11为关联规则触发模块的工作流程示意图;
[0068] 图12为关联规则商品选择模块的工作流程示意图;
[0069] 图13为关联规则购物时间计算模块的工作流程示意图;
[0070] 图14为用户浏览记录数据生成的流程示意图;
[0071] 图15为实施例2中绘制的词云图;
[0072] 图16为实施例2中生成数据所需时间示意图。

具体实施方式

[0073] 下面结合说明书附图与实施例对本发明作进一步的限定,但不限于此。
[0074] 实施例1
[0075] 一种基于多维度用户画像的电商用户行为数据模拟的方法,如图3所示,包括以下步骤:
[0076] 步骤1:构建电商平台基础数据集;
[0077] 电商平台基础数据集是指包括电商平台各种商品信息的集合,其中包括商品一级分类表、商品二级分类表、商品信息表;电商平台基础数据集和用户可选行为数据集这两类数据集是模拟用户行为数据的源头,从根本上决定了后期模拟数据的多元性和仿真性,故越丰富越好。
[0078] 步骤1中,构建电商平台基础数据集的方式是灵活的,可使用网络爬虫技术从电商web平台爬取大量的商品信息,对爬取的商品信息进行清洗、归纳、整理后存入电商平台基础数据集的各个数据表中,电商平台基础数据集便构建完成。下列表1、表2、表3分别给出商品一级分类表、商品二级分类表、商品信息表的表结构和部分示例。
[0079] 表1
[0080]商品一级分类ID 商品一级分类名称
1 家用电器类
2 手机数码类
… …
10 食品类
11 图书类
[0081] 表2
[0082] 商品二级分类ID 商品二级分类名称 商品一级分类ID 商品一级分类名称1 电视类 1 家用电器
2 空调类 1 家用电器
3 洗衣机类 1 家用电器
… … … …
82 文学类 10 图书类
83 经管类 10 图书类
84 科学技术类 10 图书类
[0083] 表3
[0084]
[0085]
[0086] 步骤2:构建商品间的关联规则表;
[0087] 关联规则是形如X→Y的蕴涵式,X和Y分别称为关联规则的先导和后继,商品间的关联规则是用来描述两个或多个商品之间的关联性;如手机和手机配件,这条关联规则中手机是先导,手机配件是后继,即在用户购买了手机的情况下会导致他购买手机配件的概率增加。本电商用户行为数据模拟系统是为了模拟出带有价值信息的电商用户行为数据以供教学和科研作为实验数据使用,为了在模拟的电商用户行为数据中能预埋商品间的关联关系,在该步骤构建商品间的关联规则表,表4展示了表结构和商品关联规则示例,先导商品类和后继商品类都从步骤1构建的商品二级分类表中选择种类,一个先导商品类(antecedent)可对应一个或多个后继商品类(consequents),本系统的使用者可根据需求在该表中自行添加和删除商品间的关联规则,在后续步骤4中会有相应的算法将该表中的关联规则预埋到模拟数据中;
[0088] 表4
[0089] ID 先导商品类(antecedent) 后继商品类(consequents)1 手机类 手机配件类、智能设备类、影音娱乐类
… … …
5 运动服饰类 户外装备类
[0090] 步骤3:构建多维度用户画像;
[0091] 此步骤构建的多维度用户画像是为了模拟用户行为数据,需要与目前生产环境中由用户行为数据刻画的用户画像相区别,通过用户行为数据刻画的用户画像重点在于描述用户,聚类分析和挖掘用户潜在价值,用于精准推荐,因此画像标签更细致具体,轮廓更清晰。而本发明通过多维度用户画像模拟用户行为数据的重点在于预设属性的预埋,生成丰富多元的行为数据,此画像标签更抽象,轮廓更模糊。从多个不同维度去设计用户画像框架,可以更加全面的描述不同特征的人群,预埋的属性更加丰富,后期模拟数据的多元性也随之提高。
[0092] 基于以上理论,先设计一个多维度用户画像框架,再利用该多维度用户画像框架依据使用者的不同需求实例出具体的多维度用户画像;
[0093] 步骤3中,先设计一个多维度用户画像框架,再利用该多维度用户画像框架依据使用者的不同需求实例出具体的多维度用户画像,具体是指:
[0094] 多维度用户画像框架包括4个维度:用户偏好维度、用户价值维度、用户活跃维度及用户习惯维度,这四个维度分别从四个层面描绘用户的特征;多维度用户画像框架示例图如图1所示;
[0095] 用户偏好维度是指能体现用户购物偏好的维度,用户偏好维度包括若干属性;如:家用电器、手机数码、家装、服饰、母婴用品、食品、图书等,这些属性均对应于表1中的商品一级分类名称;使用者可依据实际需求调整用户偏好维度中属性的数量和内容;
[0096] 用户价值维度是体现用户对商家的商业价值的维度,用户价值维度体现用户部分的购物规律,用户价值维度包括如下8种属性:重要价值、重要发展、重要保持、重要挽留、一般价值、一般发展、一般保持、一般挽留;重要价值是指:该类用户与企业交易频繁、交易量大,但长时间没有与企业进行交易,存在流失风险,该重要价值用户是企业利润的潜在来源;重要发展是指:该类用户购买量较大,但是从购买频率和近期购买时间来看交易不频繁,该类用户有很高的潜在价值,可采取针对性营销手段吸引他们;重要保持是指:该类用户与企业交易频繁、交易量大,且最近一次交易时间间隔短,实际贡献价值很高,是企业优质客户群;重要挽留是指:该类用户近一次交易时间短、购买金额大,但是购买频率较低,具有很高的潜在价值;一般价值是指:该类用户购买频率较高,但长时间没有与企业进行交易,且购买量很低,企业已很难从他们身上获取更多利润;一般发展是指:从购买频率、购买金额及近期购买情况来看,该类用户属于低价值用户;一般挽留是指:该类用户最近交易时间间隔短,但是购买频率和购买金额相对较低,无法立即给企业带来较大利润;每种用户价值属性对应的购物规律如表5RMF用户价值模型所示。
[0097] 表5
[0098]
[0099]
[0100] 用户活跃维度体现用户在平台的活跃度,用户活跃维度主要影响用户单位时间内产生的数据量,活跃度越高,单位时间内产生的数据量越大,用户活跃维度包括3种属性:低活跃、中活跃、高活跃,分别表示用户在电商平台的三个级别的活跃度;
[0101] 用户习惯维度体现用户使用平台的时间段分布,由于模拟的每一条电商用户数据都会有一个创建时间,该维度属性会影响其时间分布。用户习惯维度包括4种属性:上午、下午、傍晚、深夜;
[0102] 在构建完多维度用户画像框架之后,使用者根据需求在框架的每个维度中选取相应的属性进行组合便快速得到一个多维度用户画像,其中,多维度用户画像的用户偏好维度是一个多选维度,用户价值维度、用户活跃维度和用户习惯维度是单选维度。图2展示了一个通过多维度用户画像框架得到的多维度用户画像示例。
[0103] 步骤4:模拟生成电商用户行为数据;
[0104] 如图3所示,电商用户行为数据包括用户基本信息、用户购物数据和用户浏览记录数据,分别存入用户基本信息表、用户购物数据表和用户浏览记录数据表中,用户基本信息表、用户购物数据表、用户浏览记录数据表的表结构如表6、表7、表8所示。
[0105] 首先经过步骤1构建完成电商平台基础数据集;再经过步骤2构建商品间的关联规则表,表中存放着该系统使用者根据需求添加的商品间的关联规则;再经过步骤3该系统使用者根据需求通过多维度用户画像框架实例化出满足其需求的多维度用户画像;最后使用电商平台基础数据集、商品间的关联规则表和多维度用户画像通过数据生成算法模拟生电商用户行为数据,模拟生成的电商用户行为数据中带有该系统使用者预埋的价值信息,可供教学和科研作为实验数据使用。
[0106] 表6
[0107]
[0108]
[0109] 表7
[0110]
[0111] 表8
[0112]
[0113]
[0114] 步骤4中,通过数据生成算法模拟生成电商用户行为数据,具体包括步骤如下:
[0115] 对于步骤4中的数据生成算法,主要包括三部分:用户基本信息生成算法、用户购物数据生成算法、用户浏览记录数据生成算法,下面将结合流程图对各算法做进一步说明:
[0116] (1)生成用户基本信息:如图4所示,随机生成一个虚拟电商用户的个人基本信息,包括用户ID、用户名(user_name)、年龄(age)、性别(gender)和注册渠道(channel);年龄的值为满足均值为参数a、方差为参数b的正态分布函数且范围在14到80之间的正整数;可根据需求设置参数a、b的值来调整年龄age值的分布情况。
[0117] (2)生成用户购物数据:如图5所示,模拟生成一个用户一年内的购物数据,且在生成的购物数据中预埋进输入的用户画像和商品间关联规则的价值信息,执行步骤为:
[0118] 首先,调用月份计算模块计算出该用户一年内的最后三个月是否购物,若购物,则生成12个月的购物数据,否则,则只生成前9个月的购物数据;
[0119] 然后,调用每月购物数量模块计算每个月的购物数量N,并逐月逐条生成购物数据;在生成一条购物数据时,调用购物商品选择模块从电商平台基础数据集中挑选一件商品(commodity),调用一般购物时间计算模块计算购买该件商品的具体时间(time)和调用商品评分模块计算用户对这件商品的评分(grade),如图10所示,将商品、购买该件商品的具体时间及用户对这件商品的评分合成一条购物数据存入用户购物数据表中;
[0120] 在每生成完一条购物数据后都调用关联规则触发模块判断购买该件商品是否会触发存在于商品间的关联规则表中的关联规则,若触发,则调用关联规则商品选择模块生成一条能体现商品间关联规则的购物数据,若不触发,则继续生成下一条购物数据;
[0121] (3)生成用户浏览记录数据:即模拟生成一个用户一年内的浏览记录数据;具体实现步骤包括:
[0122] 如图14所示,调用每月浏览数量模块依据该用户的多维度用户画像中的用户活跃维度来随机出该用户每月浏览记录数量;活跃度越高,随机出的数目越高;
[0123] 调用每月浏览商品选择模块,和图8购物商品选择模块算法类似,去掉了用户价值value对结果的影响,仅依据用户偏好维度挑选的商品;
[0124] 调用浏览时间计算模块,和图9一般购物时间计算模块算法类似,依据用户习惯维度随机出浏览时间;
[0125] 最终生成一个用户一年内的浏览记录数,包括该用户每月浏览记录数量、挑选的商品及浏览时间。能体现用户偏好、用户活跃、用户习惯三个维度的价值信息。
[0126] 实施例2
[0127] 根据实施例1所述的基于多维度用户画像的电商用户行为数据模拟的方法,其区别在于:
[0128] 本实施例利用网络爬虫技术在某电商平台爬取了5万件商品信息并存储于MySQL数据库中完成了电商平台基础数据集的构建,再使用java语言对发明内容做了实现。
[0129] 先利用构建好的多维度用户画像框架实例化得到一个多维度用户画像,该多维度用户画像的用户偏好维度包含2个属性值:家用电器、家装;用户价值维度属性值为:重要发展;用户活跃维度属性值为:中活跃;用户习惯维度属性值为:傍晚。
[0130] 再在关联规则表中添加一条商品间的关联规则,关联规则的先导为:休闲食品类,该先导对应的后继为:饮料冲调类。这条关联规则的含义是当买了休闲食品类下的商品后会增加该用户以后购买饮料冲调类下的商品概率。关联规则可根据需求自行添加多条,这里仅添加一条作为演示。
[0131] 最后使用上述得到的多维度用户画像通过该系统模拟生成了100个虚拟电商用户,并模拟生成了这100个虚拟电商用户一年内的购物数据共1687条,表9展示了生成的部分数据。
[0132] 表9
[0133]
[0134] 使用本实施例的方法可以方便快捷的模拟出不同规模的电商用户数据,使用这些数据不会涉及用户隐私安全问题,且数据仿真性高、格式规范、关键信息无缺失等,降低了数据清洗的难度,为大数据工作者带来了极大的便利。
[0135] 对本实施例所生成的100个虚拟用户一年内的购物数据进行统计分析,分析本数据模拟系统是否将用户画像信息预埋到了模拟数据中。
[0136] 对生成的所有购物数据进行统计分析后绘制成词云图,词云图中是用户画像领域中一种常用的描述用户特征的手段,词云图中关键字越大越突出表明出现的频率越高。绘制的词云图如图15所示,该词云图代表这100个虚拟用户的群体特征,可以看出在本实施例中使用的用户画像各个维度的属性值在该词云图中均表现十分突出,则证明本发明成功将用户画像信息预埋到了模拟数据中,不仅如此,除了预埋的属性值,词云图中也有丰富的随机词汇,这表明本实施例在预埋特定价值信息的同时也能有丰富的随机信息,仿真性更高,能更好的满足实验和教学需求。
[0137] 另外,对本实施例所生成的100个虚拟用户一年内的购物数据进行关联分析,分析本发明是否将关联规则信息预埋到了模拟数据中。在本实施例中预埋了一条关联规则,其先导是休闲食品类,后继是饮料冲调类,意思是希望当模拟用户购买了休闲类的食品后会使其购买饮料类食品的概率增加。
[0138] 将每个虚拟用户一年内的所有购物数据看作一个事务,则总事务数量记为N,其中购买了休闲食品类商品的事务数量记为A,购买了饮料冲调类商品的事务数量记为B,同时购买了休闲食品类商品和饮料冲调类商品的事务数量记为AB。通过对模拟数据统计得到:N=100,A=10,B=14,AB=8。
[0139] 先使用支持度、置信度、提升度这三个指标来衡量这一关联规则。Support(支持度):表示同时包含A和B的事务占所有事务的比例,公式表达:Support=P(AB)。Confidence(可信度):表示事务已包含A的情况下包含B的比例,公式表达:Confidence=P(B|A)=P(AB)/P(A)。Lift(提升度):表示“事务已包含A的情况下包含B的比例”与“包含B的事务的比例”的比值,公式表达:Lift=P(B|A)/P(B)=P(AB)/P(A)/P(B)。则可以计算出:
[0140] 休闲食品类商品(A事务)对饮料冲调类商品(B事务)的支持度为:P(AB)=8/100=0.08。
[0141] 休闲食品类商品(A事务)对饮料冲调类商品(B事务)的置信度为:P(AB)/P(A)=0.08/0.1=0.8,说明在购买了休闲食品类商品后,有80%的用户购买了饮料冲调类商品。
[0142] 休闲食品类商品(A事务)对饮料冲调类商品(B事务)的提升度为:P(AB)/P(A)/P(B)=0.8/0.14=5.7,一般我们认为提升度大于3才算作值得认可的关联,显然提升度为5.7可以证明休闲食品类商品(A事务)与饮料冲调类商品(B事务)是有关联的。
[0143] 再使用KULC度量+不平衡比(IR)来衡量这一关联规则。KULC=0.5*P(B|A)+0.5*P(A|B),KULC值在0~1之间,值越大,说明联系越大;IR=P(B|A)/P(A|B)。则:
[0144] KULC=0.5*P(AB)/P(A)+0.5*P(AB)/P(B)=0.5*0.8+0.5*0.57=0.68[0145] IR=P(AB)/P(A)/P(AB)/P(B)=0.8/0.57=1.4
[0146] KULC为0.68说明事务A和事务B关联较大,IR值大于1说明两个事务的关联关系并不平衡,事务A对事务B的支持度高于B对A的支持度,即购买了休闲食品类商品(A事务)的用户购买饮料冲调类商品(B事务)的概率要比购买了饮料冲调类商品(B事务)的用户购买休闲食品类商品(A事务)的概率大,这与在模拟数据时预埋的关联规则(先导是休闲食品类,后继是饮料冲调类)一致,证明本发明成功将关联规则信息预埋到了模拟数据中。
[0147] 本实施例说明本发明能很好的将关联规则信息预埋到模拟数据中,使得使用者能生成带有特定价值信息的电商用户行为数据,更好的满足实验和教学需求。
[0148] 此外,采用本发明按参数要求可以生成不同规模的数据,比如,可以采用数据生成5组数据,记录数目分别为1万条、5万条、10万条、20万条、50万条,所需时间如图16所示。应用实验表明:数据生成系统在几秒钟的时间内即可生成50万条数据,有效地满足检测实验的需要。
[0149] 实施例3
[0150] 一种基于多维度用户画像的电商用户行为数据模拟系统,用于实现实施例1的基于多维度用户画像的电商用户行为数据模拟的方法,包括电商平台基础数据集构建单元、商品间的关联规则表构建单元、多维度用户画像构建单元及电商用户行为数据模拟生成单元;
[0151] 电商平台基础数据集构建单元用于实现所述步骤1;商品间的关联规则表构建单元用于实现所述步骤2;多维度用户画像构建单元用于实现所述步骤3;电商用户行为数据模拟生成单元用于实现所述步骤4。
[0152] 电商用户行为数据模拟生成单元包括月份计算模块、每月购物数量模块、购物商品选择模块、关联规则触发模块、一般购物时间计算模块、商品评分模块、关联规则购物时间计算模块、关联规则商品选择模块、每月浏览数量模块、每月浏览商品选择模块和浏览时间计算模块;
[0153] 调用月份计算模块计算出该用户一年内的最后三个月是否购物,若购物,则生成12个月的购物数据,否则,则只生成前9个月的购物数据;
[0154] 调用每月购物数量模块计算每个月的购物数量N,并逐月逐条生成购物数据;在生成一条购物数据时,调用购物商品选择模块从电商平台基础数据集中挑选一件商品,调用一般购物时间计算模块计算购买该件商品的具体时间和调用评分模块计算用户对这件商品的评分,将商品、购买该件商品的具体时间及用户对这件商品的评分合成一条购物数据存入用户购物数据表中;
[0155] 在每生成完一条购物数据后都调用关联规则触发模块判断购买该件商品是否会触发存在于商品间的关联规则表中的关联规则,若触发,则调用关联规则商品选择模块生成一条能体现商品间关联规则的购物数据,若不触发,则继续生成下一条购物数据;
[0156] 调用每月浏览数量模块依据该用户的多维度用户画像中的用户活跃维度来随机出该用户每月浏览记录数量;
[0157] 调用每月浏览商品选择模块依据用户偏好维度挑选的商品;
[0158] 调用浏览时间计算模块依据用户习惯维度随机出浏览时间。
[0159] 月份计算模块,如图6所示,通过传入用户的多维度用户画像userProfile来计算该用户一年内的最后三个月是否购物;具体执行步骤为:先取出用户的多维度用户画像userProfile中的用户价值属性value,再通过表5RMF用户价值模型查看该用户价值value所对应的最近一次消费recency的值,若recency的值为高,则该用户最后三个月有P1的概率购物,1‑P1的概率不购物,若recency的值为低,则该用户最后三个月有P1的概率不购物,1‑P1的概率购物。图6中参数P1的取值范围为0.6‑1.0,P1的值设置的越大,recency值的意义在模拟生成的用户购物数据中体现的越明显,但数据的多样性就越低,反之亦然。
[0160] 每月购物数量模块,如图7所示,通过传入用户的多维度用户画像userProfile来计算该用户每个月的购物数量;具体执行步骤为:先取出用户的多维度用户画像userProfile中的用户价值属性value,再通过表5RMF用户价值模型查看该用户价值value所对应的消费频率frequency的值,最后,根据frequency的值随机出该月的购物数量N。图7中参数P2的取值范围为0.6‑1.0,P2的值设置的越大,frequency值的意义在模拟生成的用户购物数据中体现的越明显,但数据的多样性就越低,反之亦然。
[0161] 购物商品选择模块,如图8所示,通过传入用户的多维度用户画像userProfile从电商平台基础数据集中挑选一件商品;具体执行步骤为:先取出用户的多维度用户画像userProfile中的用户偏好属性preferences,根据preferences的值从商品一级分类表中选取一个一级分类firstCate,然后,从商品二级分类表中随机挑选一个该一级分类firstCate下的二级分类secondCate;图8中参数P3的取值范围为0.6‑1.0,P3的值设置的越大,每次选中的一级分类firstCate属于该用户的偏好的概率越大;再取出用户的多维度用户画像userProfile中的用户价值属性value,再通过表5RMF用户价值模型查看该用户价值value所对应的消费金额money的值,根据money的值从选取的二级分类secondCate下选取一件商品commodity。图8中参数P4的取值范围为0.6‑1.0,P4的值设置的越大,money值的意义在模拟生成的用户购物数据中体现的越明显,但数据的多样性就越低,反之亦然。
[0162] 一般购物时间计算模块,如图9所示,生成一个用户的购物时间;具体执行步骤为:先从当年当月随机挑选一天,再取出用户的多维度用户画像userProfile中的用户习惯habit,根据habit的值选取一个一天内的时间戳。图9中参数P5取值范围为0.6‑1.0,P5的值设置的越大,时间戳落在用户habit时间段的概率越大。
[0163] 商品评分模块,如图9所示,生成的评分grade为0‑5之间的服从均值为b方差为a的正态分布函数的随机浮点数。
[0164] 关联规则触发模块,如图11所示,在购买一件商品后判断购买该件商品是否会触发关联规则表中的关联规则;具体执行步骤为:先获取已购买商品的二级分类secondCate,再查看商品间的关联规则表中是否有以这个二级分类为先导的关联规则,若没有,则不触发,若有,则有P6的概率触发,参数P6的取值范围为0.2‑1.0。P6的值设置的越大,关联规则表中的关联规则在生成的用户购物数据中体现的越明显,但数据的多样性就越低,反之亦然。
[0165] 关联规则商品选择模块,如图12所示,用于当购买某件商品触发了关联规则表中的关联规则后,挑选一件符合该关联规则的商品;具体执行步骤为:先从商品间的关联规则表中获取该件商品对应的先导antecedent,再从该先导对应的所有后继中随机选择一个后继consequent,然后结合多维度用户画像从该后继对应的商品二级分类下选择一件商品。
[0166] 关联规则购物时间计算模块,如图13所示,生成的是购买后继商品的时间,需要保证在购买先导商品之后。