一种基于交易数据的客户分类方法及其系统与流程

文档序号:12125343阅读:425来源:国知局
一种基于交易数据的客户分类方法及其系统与流程

本发明涉及数据挖掘领域,尤其涉及一种基于交易数据的客户分类方法及其系统。



背景技术:

基于交易数据的客户分类在零售行业有着重要的运用,它通过客户所购买的商品来分析客户的购买行为进而为零售企业提供商业决策营销战略。客户在购买商品的过程中通常会一次购买多个商品,不同的客户购买的商品中有可能有不同的商品,但也有可能有都购买的商品。所以,基于交易数据的客户分类目的是找出有相似购买行为的客户,从零售记录中分析出这些客户经常购买的商品的组合,从而有利于商品的摆架搭配、提供促销、物流等。

在现有技术中,当前客户的分类方法有基于客户的地理位置和人口学特征信息以及基于交易数据的层次聚类,其中基于交易数据的层次聚类是主要方法。但是,传统的基于客户的地理位置和人口学特征信息的聚类方法存在着这些指标数据具有私有性不容易获取的问题,同时基于这些静态特征属性聚类的结果不一定有相同的购买行为,基于交易数据的层次聚类在距离计算的时候需要两两之间进行计算,平方级的时间复杂度,不能有效处理当前大数据时代下的海量数据,同时在面对维度较高的数据时,处理效率也会迅速下降。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于交易数据的客户分类方法及其系统,旨在解决传统方法因为计算复杂度太高而不能处理当前大数据的问题。

本发明提出一种基于交易数据的客户分类方法,所述方法包括:

从零售企业交易数据库中采集交易数据;

将采集到的交易数据进行预处理,并将经过预处理后的交易数据分别按层进行编码;

根据编码后的层次信息为每个客户创建客户购买树;

对创建的所有客户购买树进行聚类,直到聚类中心不再改变或者变化小于预设的阈值为止,以获取客户分类的结果。

优选的,所述交易数据包括:会员卡号、交易日期、交易时间、商品名称、商品类别名称以及销售额。

优选的,所述预处理包括对信息缺失的交易数据进行忽略处理和对信息冲突的交易数据进行唯一性处理,其中,所述将经过预处理后的交易数据分别按层进行编码的步骤具体包括:

对经过预处理后的交易数据分别对商品名称、商品类别名称按层进行编码,且编码方式为按数字从1开始从小到大依次进行编码,层与层之间相互独立。

优选的,所述根据编码后的层次信息为每个客户创建客户购买树的步骤具体包括:

对交易数据按会员卡号聚合分组,统计每个商品的消费频率、消费金额、最近一次消费时间,以形成每个商品的RFM值;

将每个客户购买的商品根据商品类别构建出购买树,其中,所述购买树的节点包括根节点、叶子节点和内部节点,所述叶子节点为商品名称节点,所述内部节点为商品类别名称节点;

依次扫描交易数据,将获取的商品名称、商品类别名称与购买树做匹配;

将不在购买树中的该笔交易数据加入购买树中。

优选的,所述对创建的所有客户购买树进行聚类,直到聚类中心不再改变或者变化小于预设的阈值为止,以获取客户分类的结果的步骤具体包括:

a、从购买树中随机选择k颗购买树作为初始中心;

b、初始化权重树;

c、依次计算购买树中节点的RFM值;

d、依次计算购买树和每个中心距离的加权和,并将该购买树划分到加权和最小中心所在的簇;

e、更新初始中心,将划分到同一个簇的购买树对应结点的值相加后取均值作为新中心对应结点的RFM值;

f、重复上述过程c、d和e,直到聚类中心不再发生变化或变化小于预设的阈值为止。

另一方面,本发明还提供一种基于交易数据的客户分类系统,所述系统包括:

数据采集模块,用于从零售企业交易数据库中采集交易数据;

数据预处理模块,用于将采集到的交易数据进行预处理,并将经过预处理后的交易数据分别按层进行编码;

购买树生成模块,用于根据编码后的层次信息为每个客户创建客户购买树;

客户分类模块,用于对创建的所有客户购买树进行聚类,直到聚类中心不再改变或者变化小于预设的阈值为止,以获取客户分类的结果。

优选的,所述交易数据包括:会员卡号、交易日期、交易时间、商品名称、商品类别名称以及销售额。

优选的,所述预处理包括对信息缺失的交易数据进行忽略处理和对信息冲突的交易数据进行唯一性处理,其中,所述数据预处理模块具体用于:

对经过预处理后的交易数据分别对商品名称、商品类别名称按层进行编码,且编码方式为按数字从1开始从小到大依次进行编码,层与层之间相互独立。

优选的,所述购买树生成模块具体用于:

对交易数据按会员卡号聚合分组,统计每个商品的消费频率、消费金额、最近一次消费时间,以形成每个商品的RFM值;

将每个客户购买的商品根据商品类别构建出购买树,其中,所述购买树的节点包括根节点、叶子节点和内部节点,所述叶子节点为商品名称节点,所述内部节点为商品类别名称节点;

依次扫描交易数据,将获取的商品名称、商品类别名称与购买树做匹配;

将不在购买树中的该笔交易数据加入购买树中。

优选的,所述客户分类模块具体用于:

a、从购买树中随机选择k颗购买树作为初始中心;

b、初始化权重树;

c、依次计算购买树中节点的RFM值;

d、依次计算购买树和每个中心距离的加权和,并将该购买树划分到加权和最小中心所在的簇;

e、更新初始中心,将划分到同一个簇的购买树对应结点的值相加后取均值作为新中心对应结点的RFM值;

f、重复上述过程c、d和e,直到聚类中心不再发生变化或变化小于预设的阈值为止。

本发明提供的技术方案可以提高聚类的效果,充分利用商品的RFM信息和携带的层次信息,大大提高实际使用价值。同时在客户购买树的分类过程中,利用k-means原理,能够高效快速的处理大规模数据,解决了传统方法因为计算复杂度太高而不能处理当前大数据的情况。

附图说明

图1为本发明一实施方式中基于交易数据的客户分类方法流程图;

图2为本发明一实施方式中有二义性商品结构图;

图3为本发明一实施方式中购买树示例图;

图4为本发明一实施方式中基于交易数据的客户分类系统10的内部结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

以下将对本发明所提供的一种基于交易数据的客户分类方法进行详细说明。

请参阅图1,为本发明一实施方式中基于交易数据的客户分类方法流程图。

在步骤S1中,从零售企业交易数据库中采集交易数据。

在本实施方式中,所述交易数据包括:会员卡号、交易日期、交易时间、商品名称、商品类别名称以及销售额。

在本实施方式中,零售企业提供的交易数据信息中有些信息是我们需要的,有些信息是我们不需要的。我们只需要从中提取有用的交易数据信息,包括会员卡号、交易日期、交易时间、商品名称、商品类别名称以及销售额。

其中,会员卡号:零售企业为客户办理会员卡的标识号,同一个会员卡号购买的商品即认为是同一个客户购买的商品,本方案根据会员卡号区分不同的客户;

交易日期:购买商品时的具体日期,包含年月日信息;

交易时间:购买商品时的具体时间,包含时分秒信息;

商品名称:购买商品的名称;

商品类别名称:商品所属的小类、中类和大类等类别信息;

销售额:客户所购买商品的总的金额。

在步骤S2中,将采集到的交易数据进行预处理,并将经过预处理后的交易数据分别按层进行编码。

在本实施方式中,所述预处理包括对信息缺失的交易数据进行忽略处理和对信息冲突的交易数据进行唯一性处理,其中,所述将经过预处理后的交易数据分别按层进行编码的步骤具体包括:

对经过预处理后的交易数据分别对商品名称、商品类别名称按层进行编码,且编码方式为按数字从1开始从小到大依次进行编码,层与层之间相互独立。

在本实施方式中,信息缺失的交易数据,例如包括会员卡号缺失的交易数据、交易日期缺失的交易数据、交易时间缺失的交易数据、商品名称缺失的交易数据、商品类别名称缺失的交易数据、销售额缺失的交易数据等等多种情况。信息冲突的交易数据,例如包括有二义性以及多义性的交易数据等多种情况。其中,对交易数据中有些商品有二义性的问题,如图2所示,商品盘子既属于商品小类厨房又属于瓷器,这里进行唯一性处理,去掉属于瓷器,仅保留属于厨房。为了节省存储空间和提高计算效率,对所有的商品名称和所属的层次类别名称进行分层独立全局编码。

在步骤S3中,根据编码后的层次信息为每个客户创建客户购买树。

在本实施方式中,所述根据编码后的层次信息为每个客户创建客户购买树的步骤S3具体包括:

对交易数据按会员卡号聚合分组,统计每个商品的消费频率、消费金额、最近一次消费时间,以形成每个商品的RFM值;

将每个客户购买的商品根据商品类别构建出购买树,其中,所述购买树的节点包括根节点、叶子节点和内部节点,所述叶子节点为商品名称节点,所述内部节点为商品类别名称节点;

依次扫描交易数据,将获取的商品名称、商品类别名称与购买树做匹配;

将不在购买树中的该笔交易数据加入购买树中。

在本实施方式中,基于交易数据,利用广泛使用的RFM模型,提取出每个客户的RFM信息,同时保留数据的层次信息,根据每个客户的购买信息用树形结构表示。其中RFM模型是客户关系管理(CRM)方面的分析模型,被广泛应用,它是衡量客户价值和客户创利能力的重要工具和手段,该模型通过一个客户的近期购买行为、购买的总体频率以及花了多少钱三项指标来描述该客户的价值状况。

在本实施方式中,零售企业的交易数据是交易记录的全集,从该交易记录中抽取出无重复无遗漏的商品,依据其带有的层次信息建立一颗商品树,对所有的交易数据按会员卡号划分成组,以月为时间片设置滑动窗口,统计出FRM值即为购买树叶子节点的RFM值,然后对叶子节点的RFM值根据最大最小值进行归一化处理,内部节点的RFM为其孩子节点的线性和分别除以商品树中对应节点的孩子节点的数量,这样自底向上建立每个用户的购买树。其中,对交易数据按会员卡号聚合分组,统计每个商品的消费频率、消费金额、最近一次消费时间,即每个商品的RFM值。每个客户购买的商品可以根据商品类别构造出购买树,如图3所示,购买树的根节点为root节点,叶子节点为商品名称节点,内部节点为类别节点,每个节点含有RFM值。购买树的具体构建方法为,依次扫描交易数据,将获取的商品类别信息、商品名称和购买树做匹配,如果不在购买树中,将其加入购买树,如果在则不加入,这样扫描完后,购买树的叶子节点都含有RFM值信息,内部节点的RFM值根据孩子节点的RFM进行线性求解得到。

在步骤S4中,对创建的所有客户购买树进行聚类,直到聚类中心不再改变或者变化小于预设的阈值为止,以获取客户分类的结果。

在本实施方式中,所述对创建的所有客户购买树进行聚类,直到聚类中心不再改变或者变化小于预设的阈值为止,以获取客户分类的结果的步骤S4具体包括:

a、从购买树中随机选择k颗购买树作为初始中心;

b、初始化权重树;

c、依次计算购买树中节点的RFM值;

d、依次计算购买树和每个中心距离的加权和,并将该购买树划分到加权和最小中心所在的簇;

e、更新初始中心,将划分到同一个簇的购买树对应结点的值相加后取均值作为新中心对应结点的RFM值;

f、重复上述过程c、d和e,直到聚类中心不再发生变化或变化小于预设的阈值为止。

在本实施方式中,对全部的N颗购买树划分成k个类,可以得到k个类的用户,依次计算购买树和所述初始中心距离,计算购买树中叶子结点的值,对购买树中的每个结点计算完成后,得到的购买树除了root结点以外的其他结点都有了距离值,更新初始中心,将划分到同一个簇的购买树,对应结点的值相加后取均值作为新中心对应结点的RFM值,如果相应的节点不存在,则赋值一个最小值给它。

在本实施方式中,在客户购买树的分类过程中,利用k-means原理,能够高效快速的处理大规模数据,解决了传统方法因为计算复杂度太高而不能处理当前大数据的情况。根据Bregman信息熵计算购买树与中心的距离,通过不断迭代计算购买树与中心的距离直到中心不再发生变化或变化低于一定的阀值结束,最后得到用户分类的结果。

本发明提供的一种基于交易数据的客户分类方法,根据零售企业的交易数据,利用RFM模型,提取客户的交易信息,同时根据数据的层次信息,创建客户购买树,然后使用k-means对创建的客户购买树进行聚类。与传统的方法相比,本发明提供的技术方案可以提高聚类的效果,充分利用商品的RFM信息和携带的层次信息,大大提高实际使用价值,同时在客户购买树的分类过程中,利用k-means原理,能够高效快速的处理大规模数据,解决了传统方法因为计算复杂度太高而不能处理当前大数据的情况。

请参阅图2,所示为本发明一实施方式中基于交易数据的客户分类系统10的结构示意图。在本实施方式中,基于交易数据的客户分类系统10主要包括数据采集模块11、数据预处理模块12、购买树生成模块13以及客户分类模块14。

数据采集模块11,用于从零售企业交易数据库中采集交易数据。

在本实施方式中,所述交易数据包括:会员卡号、交易日期、交易时间、商品名称、商品类别名称以及销售额。

在本实施方式中,零售企业提供的交易数据信息中有些信息是我们需要的,有些信息是我们不需要的。我们只需要从中提取有用的交易数据信息,包括会员卡号、交易日期、交易时间、商品名称、商品类别名称以及销售额。

其中,会员卡号:零售企业为客户办理会员卡的标识号,同一个会员卡号购买的商品即认为是同一个客户购买的商品,本方案根据会员卡号区分不同的客户;

交易日期:购买商品时的具体日期,包含年月日信息;

交易时间:购买商品时的具体时间,包含时分秒信息;

商品名称:购买商品的名称;

商品类别名称:商品所属的小类、中类和大类等类别信息;

销售额:客户所购买商品的总的金额。

数据预处理模块12,用于将采集到的交易数据进行预处理,并将经过预处理后的交易数据分别按层进行编码。

在本实施方式中,所述预处理包括对信息缺失的交易数据进行忽略处理和对信息冲突的交易数据进行唯一性处理,其中,所述数据预处理模块12具体用于:

对经过预处理后的交易数据分别对商品名称、商品类别名称按层进行编码,且编码方式为按数字从1开始从小到大依次进行编码,层与层之间相互独立。

在本实施方式中,信息缺失的交易数据,例如包括会员卡号缺失的交易数据、交易日期缺失的交易数据、交易时间缺失的交易数据、商品名称缺失的交易数据、商品类别名称缺失的交易数据、销售额缺失的交易数据等等多种情况。信息冲突的交易数据,例如包括有二义性以及多义性的交易数据等多种情况。其中,对交易数据中有些商品有二义性的问题,如图2所示,商品盘子既属于商品小类厨房又属于瓷器,这里进行唯一性处理,去掉属于瓷器,仅保留属于厨房。为了节省存储空间和提高计算效率,对所有的商品名称和所属的层次类别名称进行分层独立全局编码。

购买树生成模块13,用于根据编码后的层次信息为每个客户创建客户购买树。

在本实施方式中,所述购买树生成模块13具体用于:

对交易数据按会员卡号聚合分组,统计每个商品的消费频率、消费金额、最近一次消费时间,以形成每个商品的RFM值;

将每个客户购买的商品根据商品类别构建出购买树,其中,所述购买树的节点包括根节点、叶子节点和内部节点,所述叶子节点为商品名称节点,所述内部节点为商品类别名称节点;

依次扫描交易数据,将获取的商品名称、商品类别名称与购买树做匹配;

将不在购买树中的该笔交易数据加入购买树中。

在本实施方式中,基于交易数据,利用广泛使用的RFM模型,提取出每个客户的RFM信息,同时保留数据的层次信息,根据每个客户的购买信息用树形结构表示。其中RFM模型是客户关系管理(CRM)方面的分析模型,被广泛应用,它是衡量客户价值和客户创利能力的重要工具和手段,该模型通过一个客户的近期购买行为、购买的总体频率以及花了多少钱三项指标来描述该客户的价值状况。

在本实施方式中,零售企业的交易数据是交易记录的全集,从该交易记录中抽取出无重复无遗漏的商品,依据其带有的层次信息建立一颗商品树,对所有的交易数据按会员卡号划分成组,以月为时间片设置滑动窗口,统计出FRM值即为购买树叶子节点的RFM值,然后对叶子节点的RFM值根据最大最小值进行归一化处理,内部节点的RFM为其孩子节点的线性和分别除以商品树中对应节点的孩子节点的数量,这样自底向上建立每个用户的购买树。其中,对交易数据按会员卡号聚合分组,统计每个商品的消费频率、消费金额、最近一次消费时间,即每个商品的RFM值。每个客户购买的商品可以根据商品类别构造出购买树,如图3所示,购买树的根节点为root节点,叶子节点为商品名称节点,内部节点为类别节点,每个节点含有RFM值。购买树的具体构建方法为,依次扫描交易数据,将获取的商品类别信息、商品名称和购买树做匹配,如果不在购买树中,将其加入购买树,如果在则不加入,这样扫描完后,购买树的叶子节点都含有RFM值信息,内部节点的RFM值根据孩子节点的RFM进行线性求解得到。

客户分类模块14,用于对创建的所有客户购买树进行聚类,直到聚类中心不再改变或者变化小于预设的阈值为止,以获取客户分类的结果。

在本实施方式中,所述客户分类模块14具体用于:

a、从购买树中随机选择k颗购买树作为初始中心;

b、初始化权重树;

c、依次计算购买树中节点的RFM值;

d、依次计算购买树和每个中心距离的加权和,并将该购买树划分到加权和最小中心所在的簇;

e、更新初始中心,将划分到同一个簇的购买树对应结点的值相加后取均值作为新中心对应结点的RFM值;

f、重复上述过程c、d和e,直到聚类中心不再发生变化或变化小于预设的阈值为止。

在本实施方式中,对全部的N颗购买树划分成k个类,可以得到k个类的用户,依次计算购买树和所述初始中心距离,计算购买树中叶子结点的值,对购买树中的每个结点计算完成后,得到的购买树除了root结点以外的其他结点都有了距离值,更新初始中心,将划分到同一个簇的购买树,对应结点的值相加后取均值作为新中心对应结点的RFM值,如果相应的节点不存在,则赋值一个最小值给它。

在本实施方式中,在客户购买树的分类过程中,利用k-means原理,能够高效快速的处理大规模数据,解决了传统方法因为计算复杂度太高而不能处理当前大数据的情况。根据Bregman信息熵计算购买树与中心的距离,通过不断迭代计算购买树与中心的距离直到中心不再发生变化或变化低于一定的阀值结束,最后得到用户分类的结果。

本发明提供的一种基于交易数据的客户分类系统10,根据零售企业的交易数据,利用RFM模型,提取客户的交易信息,同时根据数据的层次信息,创建客户购买树,然后使用k-means对创建的客户购买树进行聚类。与传统的方法相比,本发明提供的技术方案可以提高聚类的效果,充分利用商品的RFM信息和携带的层次信息,大大提高实际使用价值,同时在客户购买树的分类过程中,利用k-means原理,能够高效快速的处理大规模数据,解决了传统方法因为计算复杂度太高而不能处理当前大数据的情况。

本发明的实验数据集为某大型连锁超市的实际交易记录数据,共有1997636条记录,79852颗购买树。通过对比传统的层次聚类算法,本发明技术方案的运行时间比传统的层次聚类算法减少40%以上。

另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘或光盘等。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1