CN115563192A - 一种应用于购买模式下的高效用周期频繁模式挖掘的方法 - Google Patents
一种应用于购买模式下的高效用周期频繁模式挖掘的方法 Download PDFInfo
- Publication number
- CN115563192A CN115563192A CN202211463101.3A CN202211463101A CN115563192A CN 115563192 A CN115563192 A CN 115563192A CN 202211463101 A CN202211463101 A CN 202211463101A CN 115563192 A CN115563192 A CN 115563192A
- Authority
- CN
- China
- Prior art keywords
- sequence
- item set
- utility
- hupfps
- item
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2216/00—Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
- G06F2216/03—Data mining
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Probability & Statistics with Applications (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种应用于购买模式下的高效用周期频繁模式挖掘的方法,包括如下步骤:S1,输入数据库和五个自定义阈值;S2,扫描数据库构建1项集x的HUPFPS‑list,并判断其是否为高效用周期频繁模式;S3,根据上界值对搜索空间进行修剪,将符合条件的HUPFPS‑list添加到集合中;S4,将修剪后的1项集相交合并成2项集,并判断2项集是否为HUPFPS;S5,递归循环n‑1项集的HUPFPS‑list生成n项集,直至不能扩展,则输出所有高效用周期频繁项集。本发明的技术方案克服现有技术中大多数关于周期模式的研究都是在单个序列中挖掘,并且没有考虑模式的内部效用和外部效用的问题。
Description
技术领域
本发明涉及数据挖掘的技术领域,具体涉及一种应用于购买模式下的高效用周期频繁模式挖掘的方法。
背景技术
近年来高效用周期模式挖掘渐渐成为数据挖掘方向中的一个热门方向,针对周期模式挖掘已经有许多学者做了充分的研究。但是先前的周期模式挖掘算法都是针对单个时间序列进行挖掘,并且对于周期性模式的挖掘忽略了数据内在的权重(价值)和量化信息,导致挖掘的模式不能在利润或者效益上获得优势。为了迎合大众对效益的需求,与效益相关联的高效用模式挖掘(High-Utility Pattern Mining,HUPM)已经成为数据智能领域学术界以及工业界的研究重点之一。在效用模式挖掘研究中,模式在某条数据/记录中可以出现不止一次,而且可以对模式本身的价值设置比重,更符合现实社会的应用需要。随着周期模式的不断深入研究,一些周期性模式的变体考虑了模式的效用(利润)。随后,人们又设计了一种名为PHUSPM的算法挖掘多个符号序列中的高效用周期模式,该算法将多个序列当作一个序列,利用相同的周期度量挖掘单个序列中的周期模式。
近些年来,序列模式挖掘成为最流行的模式挖掘任务之一,序列模式挖掘作为频繁项集挖掘问题的推广,目的是在序列中发现频繁的子序列。目前,虽然提出了很多SPM算法应用到实际中,但SPM算法有一些局限性,这些算法没有考虑顺序中项目的数量及其单位利润,他们不能用于发现数据中经常出现的高效用模式。这些因素在领域中更加具有应用价值,例如顾客买啤酒和炸鸡,然后是牛肉,这种购买的模式可能会产生很高的利润,但牛肉在总利润中占比更大,在实际应用中找到多个客户每周定期购买的利润高的模式更重要。在传统的周期频繁模式挖掘PFPM中,有一些物品会被客户定期购买,但是无法发现经常被购买的物品哪些利润占比更高,这极大地阻碍了它们对一些实际应用程序的有效性,比如产品的组合推荐。另一个例子是某些DNA分子在基因序列中定期的出现,但是每个DNA分子的重要程度不同,这直接影响到一些外部性状的表达,找出频繁出现且起到主要作用的DNA分子是最关键的。大多数关于周期模式的研究都是在单个序列中挖掘,并且没有考虑模式的内部效用和外部效用,因此,现需要一种能够在多序列中挖掘、并且考虑内部效用和外部效用的高效用周期频繁模式挖掘的方法。
发明内容
本发明的主要目的在于提供一种应用于购买模式下的高效用周期频繁模式挖掘的方法,以解决现有技术中大多数关于周期模式的研究都是在单个序列中挖掘,并且没有考虑模式的内部效用和外部效用的问题。
为实现上述目的,本发明提供了一种应用于购买模式下的高效用周期频繁模式挖掘的方法,包括如下步骤:
步骤1,输入一段时间内客户购买的商品和数量的数据库,商家自定义五个阈值,即最小支持率阈值minSupRa、最大周期性阈值maxPr、最大标准偏差阈值maxStd、最小高效用阈值minHuRa和最小序列周期率阈值minSeqRa;
步骤2,扫描数据库构建1项集x的HUPFPS-list,即构建关于某个商品x出现在哪几个用户的购买序列中、按照时间顺序依次出现在哪笔交易中以及商品的效用构成的数据列表HUPFPS-list,判断1项集x是否为高效用周期频繁模式HUPFPS,具体包括:
步骤2.1,扫描数据库中的每条序列并计算出1项集x的支持率supRa({x}, S),最大周期数maxPer({x}, S),效用比率utiRa({x}, S)和周期标准差stanDev({x}, S);
对于出现在购买序列S中的商品x,如果某个商品x的购买频率大于最小购买频率占比即supRa({x}, S)≥minSupRa,商品x前后两次被购买的时间间隔不超过最大周期阈值即maxPer ({x}, S)≤maxPr ,商品x的购买周期稳定在一定范围内即stanDev({x}, S) <maxStd,并且商品x在一个客户购物序列中的销售额占比大于商家自定义的阈值即utiRa({x}, S)≥minHuRa,那么1项集x在某个客户的购买序列S中是高效用周期频繁模式,算法将1项集x满足条件的序列存入集合huPrSeq(x)中。
步骤2.2,根据集合huPrSeq(x)计算huSeqRa(x),如果高效用周期序列比huSeqRa(x)≥minSeqRa,则输出1项集x是一个高效用周期频繁模式HUPFPS项集;
其中,1项集x在数据库中满足集合huPrSeq(x)的序列个数为|huPrSeq(x)|,则1项集x在数据库中的高效用周期序列比值被定义为huSeqRa(x) = |huPrSeq(x)|/|D|,其中|D|是序列数据库的序列数量。
步骤3,根据上界值upSeqRa对搜索空间进行修剪,将符合条件upSeqRa(x) ≥minSeqRa的1项集的HUPFPS-list添加到集合boundHUPFPS,不符合条件的不再进行扩展;
步骤4,利用集合boundHUPFPS将修剪后的1项集进行相交合并成2项集即2个商品数据信息的组合,构建2项集的HUPFPS-list,将符合upSeqRa(x) ≥minSeqRa的项集的HUPFPS-list保存至boundHUPFPS,以便进行新一轮迭代,并且判断2项集是否为HUPFPS;
步骤5,递归循环n-1项集的HUPFPS-list生成n项集,直至不能扩展n项集,则输出所有高效用周期频繁项集。
进一步地,一个商品构成的项集为1项集x,多个商品构成的项集为X,项集X在数据库中满足出现过某个商品x的交易的数量supRa(X, S)≥minSupRa,项集X的最大周期性maxPer (X,S)≤maxPr和效用比率utiRa(X, S)≥minHuRa的所有序列集合记为huCand(X)={ S1,...,Sn },被称为高效用周期频繁候选模式,其集合中序列的个数记作|huCand(X)|,在数据库中项集X的高效用周期序列比值上界被定义为upSeqRa(X) = |huCand(X)|/|D|。
进一步地,序列S中项集X的支持率被定义为supRa(X, S) = sup(X, S)/|S|,其中|S|是序列S中包含的交易总数;
序列S中包含出现过某个商品X的交易的次数被定义为sup(X, S) = |TR(X, S)|。
进一步地,设一条购买序列S中的项集X的总效用为u(X, S),序列S的总效用为su(S),其比值被定义为utiRa(X, S) = u(X, S)/su(S),其中utiRa(X, S)被称为效用比率。
本发明具有如下优点:
1. 本发明所提供的方法,不仅考虑了模式在每个序列中的频率占比,还考虑到模式在每条序列中的周期性和模式在该序列中的效用占比。
2. 为了保证周期模式在每个序列中的频率,本发明定义了一个新的度量,即支持数占比,该度量保证了周期模式在不同序列长度中的支持数占序列长度的比值,进而确保算法的输出为高效用周期频繁模式。
3. 本发明提出了多序列中挖掘高效用周期频繁模式的度量,即高效用周期序列比huSeqRa,其目的是定义多个序列中的高效用周期频繁模式。
4. 本发明在基于支持度计数方法的基础上,改进为使用支持比率的约束,并且在周期模式挖掘的基础上考虑了项目的内部效用和外部效用,并定义了模式在一条序列中的高效用占比,目的是定义和发现模式在一条序列中是高效用的,保证了高效用频繁模式的准确性,能够有效满足挖掘需求。
5.为了减少搜索空间并加快高效用周期性频繁模式挖掘算法HUPFPS的速度,本发明提出了一种修剪策略,即定义高效用周期序列比的一个上界upSeqRa,并引申了两个修剪特性,即:
(1)算法计算1项集x的upSeqRa值来修剪搜索空间并且把upSeqRa(x)≥minSeqRa的1项集的HUPFPS-list存入集合boundHUPFPS中;
(2)在数据库中项集X的高效用周期序列比值上界被定义为upSeqRa(x) = |huCand(x)|/|D|。
由此产生了一种高效的算法,称为高效用周期性频繁模式挖掘算法HUPFPS,算法利用交叉程序构建一种HUPFPS-list结构,进而避免重复扫描数据库,提高算法运算效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了根据本发明的一种应用于购买模式下的高效用周期频繁模式挖掘的方法的流程图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先介绍传统的单个序列中的周期模式和效用模式定义,然后将周期和效用模式扩展到多个序列,最后提出搜索空间的修剪策略和两个新的修剪特性。下面介绍与本发明有关的定义和定理:
定义1:设I={X1, X2, ..., Xm}是数据库中m个不同项目的集合,一个项集X是I的子集,表示为X包含于I,一个项集X有k个不同的项目{i1,i2,...,ik},被定义为k-itemset,一个项目构成的项集为1项集x,多个项目构成的项集为X,一个数据库是n条序列的集合,一条序列S是交易的有序列表,被表示为S={T1,T2, ... Tj},这里的Tj代表序列中的一笔交易,其中j是序列中唯一交易标识符。
定义2:数据库中的每一个项目都有一个单位利润或者其他价值度量,被表示为pl(im),这代表项目对于用户的重要程度。每个项目的单位利润有专门的利润列表,被表示为profit = {pl(i1), pl(i2),..., pl(im)},在一条序列中任一笔交易Tq中项目ij的利润被表示为u(i, Tq, Sn) = q(ij, Tq, Sn)* pl(ij),其中q(ij,Tq, Sn)是指出现在序列Sn中,交易Tq中项目ij的数量。
定义3:考虑一行序列Si中的一个项集X ,序列Si中包含项集X的有序事务列表被定义为TR(X, S)=<Tg(1), Tg(2),..., Tg(k)>包含于Si。设Tg(z)和Tg(z+1)是项集X出现在序列Si中两笔连续出现的交易。包含项集X的两笔连续出现的交易的周期计算公式是per(Tg(z), Tg(z+1))=g(z+1) - g(z)。序列Si中项集X的周期是pr(X, Si = {per1,per2, ..., Perk+1},其中perk = g(k)-g(k-1), g(k)是项集X出现在的交易的TID,并且规定g(0)=0和g(k+1)=|Si|,其中|Si|是序列的长度。
定义4:序列S中一个项集X的周期的标准差表示为stanDev(X, S)。
定义5:序列S中的一个项集X的最大周期性被定义为maxPer(X, S)= argmax(pr(X,S))。
定义6:在一个序列S中,一个项集X可能出现在多个交易中,序列S中包含出现过X的交易的次数被定义为sup(X, S) = |TR(X, S)|。
定义7:序列S中项集X的支持率被定义为supRa(X, S) = sup(X, S)/|S|,其中|S|是序列S中包含的交易总数。
定义8:设序列Si中的项集X的总效用为u(X, Si),序列Si的总效用为su(Si)。其比值被定义为utiRa(X, Si) = u(X, Si)/su(Si),其中utiRa(X, Si)被称为效用比率。
定义9:假设有四个用户定义的阈值分别是minSupRa, maxPr, maxStd和minHuRa,如果一个项集X在序列S中满足条件supRa(X, S)≥minSupRa,maxPer(X, S)≤maxPr,stanDev(X, S)≤maxStd和utiRa(X, S)≥minHuRa, 那么定义该项集X在该序列S中是高效用周期频繁的。在数据库中,项集X满足周期频繁的所有序列集合被表示为huPrSeq(X)={S|supRa(X, S)≥minSupRa ^ maxPer(X, S)≤maxPr ^ stanDev(X,S)≤maxStd ^ utiRa(X,S)≥minHuRa^S∈D}。
定义10:项集X在数据库中满足集合huPrSeq(X)的序列个数为|huPrSeq(X)|,则项集X在数据库中的高效用周期序列比值被定义为huSeqRa(X) = |huPrSeq(X)|/|D|,其中|D|是序列数据库的序列数量。
定义11:在数据库中,如果huSeqRa(X)≥minSeqRa,那么项集X在数据库中的高效用周期性频繁模式。
定义12:假设项集X在数据库中满足supRa(X, S)≥minSupRa, maxPer(X,S)≤maxPr和utiRa(X, S)≥minHuRa的所有序列集合记为huCand(X)={S1,...,Sn},项集X被称为高效用周期频繁候选模式,其集合中序列的个数记作|huCand(X)|,在数据库中项集X的高效用周期序列比值上界被定义为upSeqRa(X) = |huCand(X)|/|D|。
定理1:在序列数据库中,项集X的upSeqRa值不小于huSeqRa,被表示为upSeqRa(X)≥huSeqRa(X)。
定理2:在数据库中,对于任意两个项集,如果XY是X的子项集表示为XY包含X,那么upSeqRa(X)≥upSeqRa(XY)。
定理3:在一个数据库中,如果任意项集X的upSeqRa(X)≤minSeqRa,那么任何项集X及其超集均不是HUPFPS。
下面结合图1介绍本发明中的具体算法过程:
如图1所示的一种应用于购买模式下的高效用周期频繁模式挖掘的方法,步骤1,输入一段时间内客户购买的商品和数量的数据库,商家定义五个阈值,即最小支持率阈值minSupRa、最大周期性阈值maxPr、最大标准偏差阈值maxStd、最小高效用阈值minHuRa和最小序列周期率阈值minSeqRa;
该算法通过深度优先搜索发现所有的HUPFPS,算法将一个多序列的序列数据库和五个自定义的阈值作为输入。
步骤2,扫描数据库构建1项集x的HUPFPS-list,即构建关于某个商品出现在的哪几个用户的购买序列中、按照时间顺序依次出现在哪笔交易中以及商品的效用构成的构成的数据列表HUPFPS-list,判断1项集x是否为高效用周期频繁模式HUPFPS。
具体地,扫描数据库中的每条序列并计算出1项集x的支持率supRa({x}, S),1项集x的最大周期数maxPer({x}, S),效用比率utiRa({x}, S)和1项集x的周期标准差stanDev({x}, S);
对于出现在购买序列S中的商品x,如果某个商品x的购买频率大于最小购买频率占比即supRa({x}, S)≥minSupRa,商品x前后两次被购买的时间间隔不超过最大周期阈值即maxPer({x}, S)≤maxPr ,商品x的购买周期的稳定性在一定范围内即stanDev({x}, S)<maxStd,并且商品x在一个客户购物序列中的销售额占比大于商家自定义的阈值即utiRa({x}, S)≥minHuRa,那么1项集x在某个客户的购买序列S中是高效用周期频繁模式,算法将1项集x满足条件的序列存入集合huPrSeq(x)中。
然后,算法用集合中huPrSeq的序列数除以序列总数|D|来计算1项集x的高效用周期序列比huSeqRa(x),如果这个值不小于minSeqRa,那么1项集x是一个高效用周期频繁项集。
步骤3中,根据上界值upSeqRa对搜索空间进行修剪,将符合条件upSeqRa(x)≥minSeqRa的1项集x的HUPFPS-list添加到集合boundHUPFPS,不符合条件的不再进行扩展。
具体地,算法计算1项集x 的upSeqRa值来修剪搜索空间并且把upSeqRa(x)≥minSeqRa的1项集x的HUPFPS-list存入集合boundHUPFPS中,集合中的HUPFPS-list根据upSeqRa的值进行排序。算法HUPFPS进行深度优先搜索调用boundHUPFPS,minSupRa,maxPr,maxStd,minSeqRa,minHuRa和数据库,进行递归搜索2项集以及更大的模式。这个过程将只探索具有upSeqRa值不小于minSeqRa的项集。
步骤4, 利用集合boundHUPFPS将修剪后的1项集进行相交合并成2项集即2个商品数据信息的组合,构建2项集的HUPFPS-list,将符合upSeqRa(x) ≥minSeqRa的项集的HUPFPS-list保存至boundHUPFPS,以便进行新一轮迭代,并且判断2项集是否为HUPFPS。
具体地,搜索过程将项集P和一系列自定义阈值minSupRa、maxPr、maxStd、minSeqRa和minHuRa和集合boundHUPFPS作为输入。项集P的扩展是通过将项集z附加到P上而获得的项集,记为Pz。当算法第一次调用这个搜索过程时,P是空集,P的扩展项集是1项集。搜索过程执行循环将P的每一对扩展项集Px和Py组合成项集Pxy的HUPFPS-list。
算法不需要重复扫描数据库就可以通过交叉程序将Px和Py的HUPFPS-list构建出扩展项集Pxy的HUPFPS-list。然后,算法扫描Pxy的HUPFPS-list以计算huCand(Pxy)和upSeqRa(Pxy)。那么,如果upSeqRa(Pxy)≥minSeqRa,项集Pxy及其超集可能是一个HUPFPS并且Pxy的HUPFPS-list被添加到集合boundHUPFPS,该集合存储了upSeqRa值不小于minSeqRa的Px所有扩展项集的HUPFPS-list。然后,算法计算huSeqRa(Pxy)的值,如果值不小于minSeqRa,则输出Pxy为HUPFPS。
步骤5,递归循环n-1项集的HUPFPS-list生成n项集,直至不能扩展n项集,则输出所有高效用周期频繁项集。
具体地,最后算法一直递归的调用模式搜索过程探索n项集,如果upSeqRa(Pxy)的值小于minSeqRa, 则项集Pxy和它的所有超集都被修剪掉。
优选实施例
本优选实施例中序列数据库样例如表1所示:
表1:序列数据库样例
SID |
1.(a:6,b:10,c:10),(b:8,c:8,d:13),(a:5,b:6),(a:8,b:5,e:8),(a:4,b:7,c:6,d:10) |
2.(d:14),(a:5,b:8,c:3,d:3),(a:6,c:15,d:8),(a:9,b:9,d:15),(a:10,b:6,c:14,e:13) |
3.(b:7,d:10),(a:8,d:4),(a:5,c:15,d:12),(b:3,d:12,e:3),(a:9,b:11,d:12) |
4.(a:6,b:12,d:14),(a:6,b:2,d:8),(a:9,c:6,d:6),(b:2,d:9),(b:5, d:8,e:6) |
构建HUPFPS-list结构如表2、表3和表4所示:
表2:项集{a}的HUPFPS-list
i-set {a} |
Sid-list {1,2,3,4} |
Tran-list [{1,3,4,5},{2,3,4,5},{2,3,5},{1,2,3}] |
Uti-list[{456,380,608,304},{380,456,684,760},{608,380,684},{456,456,684}] |
表3:项集{d}的HUPFPS-list
i-set {d} |
Sid-list {1,2,3,4} |
Tran-list [{2,5},{1,2,3,4},{1,2,3,4,5},{1,2,3,4,5}] |
Uti-list [{533,410},{574,123,328,615},{410,164,492,492,492},{574,328,246,369,328}] |
表4:项集{a, d}的HUPFPS-list
i-set {a,d} |
Sid-list {1,2,3,4} |
Tran-list [{5},{2,3,4},{2,3,5},{1,2,3}] |
Uti-list [{714},{503,784,1299},{772,872,1176},{1030,784,930}] |
表5:外部效用表
a | b | c | d | e |
76 | 65 | 35 | 41 | 118 |
首先算法根据1项集的参数值计算出huSeqRa({a})≥minSeqRa,upSeqRa({a})≥minSeqRa,huSeqRa({d})≥minSeqRa和upSeqRa({d})≥minSeqRa。因此,项集{a}和{d}和算法扫描一遍数据库通过高效用周期候选模式的1项集的HUPFPS-list的Sid-list,Tran-list和Uti-list三个字段信息相交扩展产生2项集的HUPFPS-list,然后通过HUPFPS-list信息计算2项集模式的参数值,进而判断扩展2项集是否是HUPFPS,以此类推,直到不能产生更大的项集。
表1表示的是,四个顾客购买商品a,b,c,d,e的时间和数量,以表1中的第一个顾客的购买清单1.(a:6,b:10,c:10),(b:8,c:8,d:13),(a:5,b:6),(a:8,b:5,e:8),(a:4,b:7,c:6,d:10) 为例:即第一个顾客第一次,a商品购买了6个,b商品购买了10个,c商品购买了10个,第二次b商品购买了8个,c商品购买了8个,d商品购买了13个,以此类推。
表2中,Sid-list{1,2,3,4}代表第一个、第二个、第三个和第四个顾客都购买了a商品,Tran-list [{1,3,4,5},{2,3,4,5},{2,3,5},{1,2,3}]中的项集{1,3,4,5}代表第一个顾客第一次、第三次、第四次和第五次购买了商品a,{2,3,4,5}代表第二个顾客第二次、第三次、第四次和第五次购买了a商品,以此类推。
Uti-list[{456,380,608,304},{380,456,684,760},{608,380,684},{456,456,684}]中项集{456,380,608,304}代表第一个顾客第一次购买了6个a商品的外部效用为6×76=456,第三次购买了5个a商品的外部效用为5×76=380,以此类推。
表4中
Uti-list: [{714},{503,784,1299},{772,872,1176},{1030,784,930}],结合表5中各个商品的外部效用值,其中项集{714}为第一个顾客在第五次同时购买了4个a商品和10个d商品的外部效用为4×76+10×41=714,以此类推。
由表1可知,在模式{a}的HUPFPS-list中,Sid-list是{1,2,3,4},模式{a}的Tran-list是({1,3,4,5},{2,3,4,5},{2,3,5},{1,2,3}),{a}的Uti-list是{456,380,608,304},{380,456,684,760},{608,380,684},{456,456,684}。在模式{d}的HUPFPS-list中,Sid-list是{1,2,3,4},模式{d}的Tran-list是({2,5},{1,2,3,4},{1,2,3,4,5},{1,2,3,4,5}),{d}的Uti-list是({533,410},{574,123,328,615},{410,164,492,92,492},{574,328,246,369,328})。
算法将模式{a}和{d}的HUPFPS-list相交扩展,得到模式{a,d}的Sid-list是{1,2,3,4},{a,d}的Tran-list是({5},{2,3,4},{2,3,5},{1,2,3}),{a,d}的Uti-list是({714},{503,784,1299},{772,872,1176},{1030,784,930})。算法根据{a,d}的HUPFPS-list中的字段信息计算参数值,然后和自定义阈值进行比较获得集合huCand({a,d})={S2,S3,S4},并且根据集合计算出upSeqRa({a,d})=|huCand({a,d})|\|D=|0.75≥minSeqRa,所以模式{a, d}及其超集可能是HUPFPS,并且将{a, d}的HUPFPS-list添加到集合boundHUPFPS以便为了扩展3项集。
最后根据参数值计算出序列集合huPrSeq({a,d})={S2,S3,S4}计算出huSeqRa({a,d})=3/4=0.75,算法输出二项集{a,d}是HUPFPS。算法HUPFPS递归的调用探索程序探索更大的n项集。
当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。
Claims (4)
1.一种应用于购买模式下的高效用周期频繁模式挖掘的方法,其特征在于,包括如下步骤:
步骤1,输入一段时间内客户购买的商品和数量的数据库,商家自定义五个阈值,即最小支持率阈值minSupRa、最大周期性阈值maxPr、最大标准偏差阈值maxStd、最小高效用阈值minHuRa和最小序列周期率阈值minSeqRa;
步骤2,扫描数据库构建1项集x的HUPFPS-list,即构建关于某个商品x出现在哪几个用户的购买序列中、按照时间顺序依次出现在哪笔交易中以及商品的效用构成的数据列表HUPFPS-list,判断1项集x是否为高效用周期频繁模式HUPFPS,具体包括:
步骤2.1,扫描数据库中的每条序列并计算出1项集x的支持率supRa({x}, S),最大周期性maxPer({x}, S),效用比率utiRa({x}, S)和1项集x的周期标准差stanDev({x}, S);
对于出现在购买序列S中的商品x,如果商品x的购买频率大于最小购买频率,即supRa({x}, S)≥minSupRa,商品x前后两次被购买的时间间隔不超过最大周期阈值,即maxPer({x}, S)≤maxPr ,商品x的购买周期稳定在一定范围内,即stanDev({x}, S) <maxStd,并且商品x在一个客户的购物序列中的销售额占比utiRa({x}, S)大于商家自定义的最小高效用阈值,即utiRa({x}, S)≥minHuRa,那么1项集x在某个客户的购买序列S中是高效用周期频繁模式,算法将1项集x满足条件的序列存入集合huPrSeq(x)中;
步骤2.2,根据集合huPrSeq(x)计算huSeqRa(x),如果高效用周期序列比huSeqRa(x)≥minSeqRa,则输出1项集x是一个高效用周期频繁模式HUPFPS项集;
其中,1项集x在数据库中满足集合huPrSeq(x)的序列个数为|huPrSeq(x)|,1项集x在数据库中的高效用周期序列比值被定义为huSeqRa(x) = |huPrSeq(x)|/|D|,其中|D|是数据库的序列数量;
步骤3,根据上界值upSeqRa对搜索空间进行修剪,将符合条件upSeqRa(x)≥minSeqRa的1项集x的HUPFPS-list添加到集合boundHUPFPS,不符合条件的不再进行扩展;
步骤4,利用集合boundHUPFPS将修剪后的1项集进行相交合并成2项集即2个商品数据信息的组合,构建2项集的HUPFPS-list,将符合upSeqRa(x)≥minSeqRa的项集的HUPFPS-list保存至boundHUPFPS,以便进行新一轮迭代,并且判断2项集是否为HUPFPS;
步骤5,递归循环n-1项集的HUPFPS-list生成n项集,直至不能扩展n项集,则输出所有高效用周期频繁项集。
2.根据权利要求1所述的一种应用于购买模式下的高效用周期频繁模式挖掘的方法,其特征在于,一个商品构成的项集为1项集x,多个商品构成的项集为X,项集X在数据库中满足出现过某个商品x的交易的数量supRa(X, S)≥minSupRa,项集X的最大周期性maxPer(X,S)≤maxPr和效用比率utiRa(X, S)≥minHuRa的所有序列集合记为huCand(X)={S1,...,Sn },被称为高效用周期频繁候选模式,其集合中序列的个数记作|huCand(X)|,在数据库中项集X的高效用周期序列比值上界被定义为upSeqRa(X) = |huCand(X)|/|D|。
3.根据权利要求2所述的一种应用于购买模式下的高效用周期频繁模式挖掘的方法,其特征在于,序列S中项集X的支持率被定义为supRa(X, S) = sup(X, S)/|S|,其中|S|是序列S中包含的交易总数;
序列S中包含出现过某个商品X的交易的次数被定义为sup(X, S) = |TR(X, S)|。
4.根据权利要求2所述的一种应用于购买模式下的高效用周期频繁模式挖掘的方法,其特征在于,设一条购买序列S中的项集X的总效用为u(X, S),序列S的总效用为su(S),其比值被定义为utiRa(X, S) = u(X, S)/su(S),其中utiRa(X, S)被称为效用比率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211463101.3A CN115563192B (zh) | 2022-11-22 | 2022-11-22 | 一种应用于购买模式下的高效用周期频繁模式挖掘的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211463101.3A CN115563192B (zh) | 2022-11-22 | 2022-11-22 | 一种应用于购买模式下的高效用周期频繁模式挖掘的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115563192A true CN115563192A (zh) | 2023-01-03 |
CN115563192B CN115563192B (zh) | 2023-03-10 |
Family
ID=84769999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211463101.3A Active CN115563192B (zh) | 2022-11-22 | 2022-11-22 | 一种应用于购买模式下的高效用周期频繁模式挖掘的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115563192B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995882A (zh) * | 2014-05-28 | 2014-08-20 | 南京大学 | 基于MapReduce的概率频繁项集挖掘方法 |
CN106202430A (zh) * | 2016-07-13 | 2016-12-07 | 武汉斗鱼网络科技有限公司 | 基于关联规则的直播平台用户兴趣度挖掘系统及挖掘方法 |
CN107491988A (zh) * | 2017-08-09 | 2017-12-19 | 浙江工商大学 | 一种基于遗传算法和改进兴趣度的智慧零售数据挖掘方法 |
CN107515942A (zh) * | 2017-08-31 | 2017-12-26 | 齐鲁工业大学 | 非频繁序列中挖掘可决策负序列模式的购买行为分析方法 |
WO2018054352A1 (zh) * | 2016-09-23 | 2018-03-29 | 腾讯科技(深圳)有限公司 | 项集确定方法、装置、处理设备及存储介质 |
US20180307722A1 (en) * | 2016-09-27 | 2018-10-25 | Tencent Technology (Shenzhen) Company Limited | Pattern mining method, high-utility itemset mining method, and related device |
CN110471960A (zh) * | 2019-08-21 | 2019-11-19 | 桂林电子科技大学 | 一种含负效用的高效用项集挖掘方法 |
CN111930797A (zh) * | 2020-07-09 | 2020-11-13 | 西北工业大学 | 不确定周期性频繁项集挖掘方法及装置 |
WO2022036894A1 (zh) * | 2020-08-18 | 2022-02-24 | 齐鲁工业大学 | 一种基于可决策的高效用负序列规则挖掘的商品推荐系统及其工作方法 |
-
2022
- 2022-11-22 CN CN202211463101.3A patent/CN115563192B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995882A (zh) * | 2014-05-28 | 2014-08-20 | 南京大学 | 基于MapReduce的概率频繁项集挖掘方法 |
CN106202430A (zh) * | 2016-07-13 | 2016-12-07 | 武汉斗鱼网络科技有限公司 | 基于关联规则的直播平台用户兴趣度挖掘系统及挖掘方法 |
WO2018054352A1 (zh) * | 2016-09-23 | 2018-03-29 | 腾讯科技(深圳)有限公司 | 项集确定方法、装置、处理设备及存储介质 |
US20180307722A1 (en) * | 2016-09-27 | 2018-10-25 | Tencent Technology (Shenzhen) Company Limited | Pattern mining method, high-utility itemset mining method, and related device |
CN107491988A (zh) * | 2017-08-09 | 2017-12-19 | 浙江工商大学 | 一种基于遗传算法和改进兴趣度的智慧零售数据挖掘方法 |
CN107515942A (zh) * | 2017-08-31 | 2017-12-26 | 齐鲁工业大学 | 非频繁序列中挖掘可决策负序列模式的购买行为分析方法 |
CN110471960A (zh) * | 2019-08-21 | 2019-11-19 | 桂林电子科技大学 | 一种含负效用的高效用项集挖掘方法 |
CN111930797A (zh) * | 2020-07-09 | 2020-11-13 | 西北工业大学 | 不确定周期性频繁项集挖掘方法及装置 |
WO2022036894A1 (zh) * | 2020-08-18 | 2022-02-24 | 齐鲁工业大学 | 一种基于可决策的高效用负序列规则挖掘的商品推荐系统及其工作方法 |
Non-Patent Citations (2)
Title |
---|
PAVITRA BAI S: "Efficient Incremental Itemset Tree for approximate Frequent Itemset mining on Data Stream", 《IEEE》 * |
许冬冬等: "数据挖掘在企业备件管理中的应用", 《中国新通信》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115563192B (zh) | 2023-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kleinberg et al. | A microeconomic view of data mining | |
Wu et al. | Efficient mining of a concise and lossless representation of high utility itemsets | |
Chu et al. | An efficient algorithm for mining high utility itemsets with negative item values in large databases | |
US8880451B2 (en) | Fast algorithm for mining high utility itemsets | |
US11854022B2 (en) | Proactively predicting transaction dates based on sparse transaction data | |
Shankar et al. | A fast algorithm for mining high utility itemsets | |
Neeraj et al. | Overview of non-redundant association rule mining | |
Nouioua et al. | Tkc: Mining top-k cross-level high utility itemsets | |
Li et al. | Temporary rules of retail product sales time series based on the matrix profile | |
CN113378470A (zh) | 一种面向时序网络的影响力最大化方法及系统 | |
Huang et al. | Targeted mining of top-k high utility itemsets | |
Dinh et al. | A survey of privacy preserving utility mining | |
CN115563192B (zh) | 一种应用于购买模式下的高效用周期频繁模式挖掘的方法 | |
Chen et al. | High Utility Periodic Frequent Pattern Mining in Multiple Sequences. | |
Lee et al. | An efficient approach for mining maximized erasable utility patterns | |
CN115617881B (zh) | 一种不确定交易数据库中多序列的周期频繁模式挖掘方法 | |
CN107609110B (zh) | 基于分类树的最大多样频繁模式的挖掘方法及装置 | |
Kenny Kumar et al. | High average utility itemset mining: A survey | |
Huang | Knowledge gathering of fuzzy multi-time-interval sequential patterns | |
Kunjachan et al. | Recommendation using frequent itemset mining in big data | |
Nouioua et al. | CHUQI-Miner: Mining correlated quantitative high utility itemsets | |
Kavitha et al. | High Utility Itemset Mining With Influential Cross Selling Items From Transactional Database | |
Ambulkar et al. | Efficient Algorithms for mining High Utility Itemset | |
Murali et al. | A Novel Mining Algorithm for High Utility Itemsets from Transactional Databases | |
Dalal et al. | Various Research Opportunities in High Utility Itemset Mining |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |