计算机光盘软件与应用 2011年第23期 Computer CD Software and Applications 软件设计开发 基于数据挖掘的购物篮分析软件的设计与实现 童铁杰 (宁波高新区尧瑶科技有限公司,浙江宁波315040) 摘要:市场购物篮分析是数据挖掘技术中针对零售型企业销售数据的分析方式,在有效选择促销活动和营销策略方 面有着举足轻重的重要性。通过分析,可以发现隐藏着的顾客消费模式,鉴别出促进商品组合销售的获利机会。本文描述 了一个购物篮分析软件从需求分析、详细设计到编程实现的过程,重点说明了开发过程中遇到的问题以及解决问题的方法, 为同行开发同类产品提供参考依据。 关键词:数据挖掘;购物篮分析;聚类分析 中图分类号:TP311.52 文献标识码:A 文章编号:1007~9599(2011)23-0199—01 Market Basket Analysis Software Design and Implementation Based on Data Mining Tong Tiejie (Ningbo High-tech Zone Yao Yao Technology Co.,Lld.,Ningbo 31 5040,China) Abstract:Market-basket analysis is a Data Mining technology for the retail enterprise sales,it is very important for the marketing strategy choice.Through these analyses,we can found the hidden consumer spending pattems and identify the mix of goods sold for profit oppor ̄mities.This paper describes how to build market-basket analysis software,including requirements analysis,detailed design and coding. Keywords:Data mining;Market-basket analysis;Cluster analysis 一、引言 员做了如下处理: 商业智能技术在当前的商业社会有着广泛的应用前景,特别 (一)数据仓库的动态建立。由于原始数据是POS机传到后 是对零售型企业来说非常需要,而数据挖掘技术是商业智能技术 台数据库的不断变化的数据,因此所建立的数据仓库也要随之同 的一个重要组成部分。从顾客的购买交易中分析出顾客有可能会 步,但同步时间可控制。为此,本软件专门开发了ETL工具, 同时购买的一类或一组商品关联商品,商场则可根据此分析结果 用于对不同数据源的数据抽取,可以根据条件单表或者多表生成 调整商品的摆放位置,把相关商品摆放在一起,以增加商品的销 新的数据表到数据仓库中;同时,数据若有更新,则定时以作业 售量同时,还可为促销提供帮助促销一种商品,并避免在同一时 的形式同步到数据仓库。这里涉及到一个多表连接查询海量数据 期促销同一类相关商品,从而大幅度提高促销的效果。 速度的问题。软件采用的方法是多进程多线程模式,一个进程以 市场购物篮分析在数据挖掘应用领域中有着独特的地位,越 10万条数据为一队列,以主键排列的方式放到缓存区,排序完成 来越多的企业通过分析软件的帮助来部署、改变他们的销售策略。 后另一进程负责将数据插入到数据仓库。多线程的方式保证了海 比较典型的如日本的7-1l便利连锁店,他在全世界拥有超过 量数据的及时插入与更新。 28200个连锁店,他们正是靠着“市场购物篮分析软件”来展开 (二)数据挖掘操作。当数据仓库建立之后,就需要对数据 货品的部署及搭配,起到了非常好的效果。 仓库进行数据挖掘操作,本软件主要采用的数据挖掘技术为购物 二、软件整体结构设计 篮分析及聚类分析。购物篮分析从对顾客的购买行为进行分类开 商场的销售数据从POS机读入,存储到后台的数据库,形成 始,接下来的步骤是根据购买者特征,鉴别出提升利润的活跃性 了海量的原始销售数据集。系统首先要做的就是将这些海量数据 信息。一旦购买者特征决定的利润水平已知,零售商就拥有了可 进行数据抽取、清洗和转换,建立一个新的数据仓库。在此数据 用于关键决策制定的实际数据。一般情况下,购物篮分析往往伴 仓库基础上,软件进行数据挖掘操作,形成有效的数据报表,同 随着聚类分析,是以各种非定向式的数据挖掘。聚类分析最简单 时生成时间、门店、商品三个纬度的聚类数据。此过程涉及到数 的形式就是用算法决定类的数量,确定在特定类或者组中平均变 据抽取工具(ETL)的设计,冗余数据的删除以及大量数据的比对。 量特征。本软件采用的是AporJo算法的改进版,具体算法内容此 总体架构图见图1。 处不做赘述。 四、实验仿真及分析 软件采用一个拥有120家连锁店的零售企业做模型范本,测 试数据为1000万条销售数据。经过实际使用,一千万条销售数据, 按分店、日期、商品三种纬度抽取建模时间小于十分钟;一千万 条销售数据按月、周、日、小时不同颗粒度抽取建模时间小于十 分钟;一千万条销售数据按不同的条件(付款方式、价格、金额、 销售量)抽取建模时间小于十分钟;一千万条数据中计算两种商 品关联度时间小于十分钟。根据以上的数据,对比微软的SOL Server AnalysiS Service及IBM的SPSS Clementine的建模分 析时间,本系统的性能已经非常接近两大巨头的商业智能软件。 五、结束语 本软件实现了市场购物篮分析这一数据挖掘领域比较重要的 分析技术,能够帮助商场建立一个之前并不知晓的销售模型。通 图1软件总体架构图 过找出商品之间的关联性,给出这些关联性的合理解释,并创造 软件分成数据处理与数据展示两部分。数据处理为服务器端, 出增加整体利润的方法。但这~软件也有他的局限性,他只是构 主要是将多个原始数据库中的数据根据所选条件,抽取到数据仓 建出一个假设性的销售策略,该策略是否有效,要经过实际的市 库中,以数据集和数据集市的形式存储,并在数据仓库基础 场销售检验,只有能切实提高销售的情况下软件才真正具有价值。 上进行数据挖掘操作,本软件中的数据挖掘主要是聚类分析以及 参考文献: 购物篮分析。数据展示为BS模式,用户可以从互联网上根据不同 [qw.H.Inmon.(2002).Building the data warehouse(3:eupp1).John 的权限登录查看各类报表,比如用户在某次购买活动中同时购买 Wiley&Sons.ISBN O一471一O8130~2 多类产品的概率等。 21薛红,王敏.基于DW+OLAP+DM的超市销售决策支持系 三、开发难点及解决方案 统m计算机工程2007,~本软件最大的难度在于数据仓库的动态建立过程,其次是在 f31David O1son,石勇.14 商业数据挖掘导论【M1.机械工业出版 数据仓库基础上所做的数据挖掘工作。针对这两大难点,设计人 社,ISBN 978-7-111-22-17-6 一199一