第十一章序列模式挖掘序列挖掘或称序列模式挖掘,是指从序列数据库中发现蕴涵的序列模式
时间序列分析和序列模式挖掘有许多相似之处,在应用范畴、技术方法等方面也有很大的重合度
但是,序列挖掘一般是指相对时间或者其他顺序出现的序列的高频率子序列的发现,典型的应用还是限于离散型的序列
序列模式挖掘最早是由Agrawal等人提出的,它的最初动机是针对带有交易时间属性的交易数据库中发现频繁项目序列以发现某一时间段内客户的购买活动规律
近年来序列模式挖掘已经成为数据挖掘的一个重要方面,其应用范围也不局限于交易数据库,在DNA分析等尖端科学研究领域、Web访问等新型应用数据源等众多方面得到针对性研究
一、序列模式的概念及定义举例说明,比如有顾客租借录像带,典型的顺序是先租“星球大战”,然后是“帝国反击战”,再是“杰达武士归来”(这三部影片是以故事发生的时间先后而情节连续的)
值得注意的是租借这三部电影的行为并不一定需要是连续的
在任意两部之间随便插租了什么电影,仍然还是满足了这个序列模式,并且扩展一下,序列模式的元素也可以不只是一个元素(如一部电影),它也可以是一个项集(itemset)
项集,指的是多个物品组成的集合,内部元素不分排列顺序,比如“枕头和枕头套”就可以看作是由两个项(item)组成的项集,它也可以作为某一个序列模式的元素
相关概念及定义以商品交易为例子,数据源是一个给定的由客户交易组成的大型数据库,每个交易由客户号(customer-id),交易时间以及在交易中购买的项组成
项集(itemset):由项(item)组成的一个非空集合
序列(sequence):是一列排好序的项集
不失一般性假定项集中的项由一些连续整数代替,这样一个项集i可以表示为(i1,i2…im),而这里的ij代表了一个项
一个序列s可以表示为,这里的sj代表的是一个项集
序列挖掘—基本概念