《中国人工智能学会通讯》——12.2 大数据环境下序列模式挖掘及应用

简介: 本节书摘来自CCAI《中国人工智能学会通讯》一书中的第12章,第12.2节, 更多章节内容可以访问云栖社区“CCAI”公众号查看。

12.2 大数据环境下序列模式挖掘及应用

模式发现问题诞生于 1993 年[1] ,与分类、聚类和异常点检测并称为数据挖掘四大问题[2] 。它指的是从数据库找出频繁共现的“项”,被称为频繁模式。模式发现问题在数据挖掘领域地位重要,有大量关于模式发现的论文发表在重要数据挖掘、数据库会议。Google Scholar 记录的 Agrawal 等人[1]提出的经典模式发现算法 Apriori 的论文单篇 , 被引用次数近 1.8 万次,已成为数据挖掘领域引用最多的论文之一。

序列模式 (Sequential pattern) [3] (及其扩展情景模式 (Episode) [4] )是引入了时间关系和约束的数据模式,它指的是从时序数据中挖掘频繁出现的子序列。这类模式因为蕴含了时间维度的补充信息,为推荐或者预测提供了潜在的帮助[2] 。序列模式挖掘曾成功应用于网络挖掘[5-6] 、设备故障检测 [7] 、软件 bug 检测[8] 、时空数据分析 [9] 、股票趋势预测 [10] 、化学与生物模式[11-12]和新闻分析[13-14]等。由于其广泛的应用,它逐渐成为数据挖掘领域中一个专门的研究主题。

由于序列模式挖掘是从频繁模式挖掘[1]演化而来,因此 Agrawal 和 Srikant [3] 最初提出该问题也是为了挖掘用户购物数据中行为模式来辅助决策。这个挖掘问题的问题描述如下:

设 I={I 1 , I 2 , …, I m } 是所有项的集合。给定一个序列集合 D,其中任意一条序列 S i 由一个元素列表组成,每一个元素则由 I 中的项组成,以及一个用户指定的最小支持度阈值 min_sup,序列模式挖掘是指从D中挖掘出现频率不低于min_sup的子序列,它们被称为频繁序列模式。

如表 1 所示的一个序列集合中,字母代表项,括号中的项视为无序,若设置最小支持度 min_sup为 2,子序列〈(bc)a〉是一个频繁序列模式,它共出现了 2 次,分别位于 s 1 和 s 2 中。image
频繁情景模式挖掘,作为序列模式挖掘的扩展,则考虑的是从一条长事件序列中挖掘频繁的子序列,其问题描述如下:

设 E={E 1 , E 2 , …, E m } 是所有事件的集合。情景模式发现问题是指从一条单一的事件长序列 S 中挖掘出现频率不小于 min_sup 的子序列,min_sup 是用户指定的最小支持度阈值参数。其中,S 中的任意一个事件集合均由 E 的事件组成。挖掘出来的频繁子序列被称作频繁情景模式。

如图 1 所示的一条事件序列中,字母代表事件,数字代表事件发生的时间,若设置最小支持度 min_sup 为 3,子序列〈A, B〉是一个频繁情景模式,它共出现了 3 次,在序列中用虚线矩形框标注。image
由于序列模式挖掘(及其扩展频繁情景模式挖掘)和频繁模式挖掘的相关性,其算法多数也是由频繁模式挖掘算法改进而来,这些算法大致可以分为基于 Apriori 的算法[3]和模式增长算法[15]两类。其中,基于 Apriori 思想的算法主要思想是通过生成候选集,以及扫描数据库进行逐层挖掘。这些算法通常还基于 Apriroi 算法的支持度的向下封闭性(downward closure)进行剪枝,即任何不频繁模式的超模式也不会频繁。但是在频繁情景挖掘问题中,这种性质不一定适用[16] 。这些算法虽然可以使用剪枝技术提升效率,但是它们实际的缺点是生成了大量的候选序列并需要重复扫描数据库对每一个候选序列计算支持度,这样的迭代过程使得挖掘效率低下。为了缓解这些问题,基于模式增长的算法开始涌现。它们大多采用了分治思想,以当前的频繁序列模式作为前缀将原始序列分割成若干个投影数据库(projected databases),并在这些投影区域内进行挖掘。相较于前一大类算法,基于模式增长的方法的好处是不需要生成序列的候选集合,并且缩小了数据库扫描的范围,在性能上具有一定的优势。

近年来,为了能够处理持续快速增长的大数据,序列模式挖掘(及其扩展频繁情景模式挖掘)在并行、增量和近似算法上也取得了显著进步。本文将从算法角度综述主要的序列模式挖掘(以及频繁情景模式挖掘)算法,并且回顾适用于大数据的序列模式挖掘(频繁情景模式挖掘)代表性算法。

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
8月前
|
存储 数据采集 搜索推荐
Java 大视界 -- Java 大数据在智慧文旅旅游景区游客情感分析与服务改进中的应用实践(226)
本篇文章探讨了 Java 大数据在智慧文旅景区中的创新应用,重点分析了如何通过数据采集、情感分析与可视化等技术,挖掘游客情感需求,进而优化景区服务。文章结合实际案例,展示了 Java 在数据处理与智能推荐等方面的强大能力,为文旅行业的智慧化升级提供了可行路径。
Java 大视界 -- Java 大数据在智慧文旅旅游景区游客情感分析与服务改进中的应用实践(226)
|
8月前
|
存储 监控 数据可视化
Java 大视界 -- 基于 Java 的大数据可视化在企业生产运营监控与决策支持中的应用(228)
本文探讨了基于 Java 的大数据可视化技术在企业生产运营监控与决策支持中的关键应用。面对数据爆炸、信息孤岛和实时性不足等挑战,Java 通过高效数据采集、清洗与可视化引擎,助力企业构建实时监控与智能决策系统,显著提升运营效率与竞争力。
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
Java 大视界 -- Java 大数据机器学习模型在自然语言生成中的可控性研究与应用(229)
本文深入探讨Java大数据与机器学习在自然语言生成(NLG)中的可控性研究,分析当前生成模型面临的“失控”挑战,如数据噪声、标注偏差及黑盒模型信任问题,提出Java技术在数据清洗、异构框架融合与生态工具链中的关键作用。通过条件注入、强化学习与模型融合等策略,实现文本生成的精准控制,并结合网易新闻与蚂蚁集团的实战案例,展示Java在提升生成效率与合规性方面的卓越能力,为金融、法律等强监管领域提供技术参考。
|
8月前
|
存储 人工智能 算法
Java 大视界 -- Java 大数据在智能医疗影像数据压缩与传输优化中的技术应用(227)
本文探讨 Java 大数据在智能医疗影像压缩与传输中的关键技术应用,分析其如何解决医疗影像数据存储、传输与压缩三大难题,并结合实际案例展示技术落地效果。
|
7月前
|
机器学习/深度学习 传感器 分布式计算
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
499 14
|
9月前
|
数据采集 分布式计算 DataWorks
ODPS在某公共数据项目上的实践
本项目基于公共数据定义及ODPS与DataWorks技术,构建一体化智能化数据平台,涵盖数据目录、归集、治理、共享与开放六大目标。通过十大子系统实现全流程管理,强化数据安全与流通,提升业务效率与决策能力,助力数字化改革。
330 4
|
9月前
|
分布式计算 DataWorks 数据处理
在数据浪潮中前行:记录一次我与ODPS的实践、思考与展望
本文详细介绍了在 AI 时代背景下,如何利用阿里云 ODPS 平台(尤其是 MaxCompute)进行分布式多模态数据处理的实践过程。内容涵盖技术架构解析、完整操作流程、实际部署步骤以及未来发展方向,同时结合 CSDN 博文深入探讨了多模态数据处理的技术挑战与创新路径,为企业提供高效、低成本的大规模数据处理方案。
431 3
|
8月前
|
机器学习/深度学习 运维 监控
运维不怕事多,就怕没数据——用大数据喂饱你的运维策略
运维不怕事多,就怕没数据——用大数据喂饱你的运维策略
668 0
|
7月前
|
传感器 人工智能 监控
数据下田,庄稼不“瞎种”——聊聊大数据如何帮农业提效
数据下田,庄稼不“瞎种”——聊聊大数据如何帮农业提效
237 14
|
7月前
|
机器学习/深度学习 传感器 监控
吃得安心靠数据?聊聊用大数据盯紧咱们的餐桌安全
吃得安心靠数据?聊聊用大数据盯紧咱们的餐桌安全
236 1
下一篇
开通oss服务